|
|
su.dbms.sql- SU.DBMS.SQL ------------------------------------------------------------------ From : Akzhan Abdulin 2:5030/217 19 Jan 2001 15:10:39 To : Sergey Pratch Subject : Вложенные транзакции --------------------------------------------------------------------------------
12 Jan 01 21:07, you wrote to All:
SP> Hу разносить дебет и кредит по разным записям - можно и так, но по
SP> сути это две стороны одной сущности. Поэтому разносить их по разным
SP> записям - не совсем корректно, даже опираясь на всевозможные системы
SP> обеспечения их целостности, как одного единого.
SP> Все дело в том, что я уже когда так делал, то при вставке пачки
SP> записей в таблицу "Проводки" у MSSQL оптимизатора от or в объединении,
SP> срывало "крышу". Поэтому я на скорую руку и развел их на два апдейта.
SP> А на варианте через один поставли крест, но навеянный твоей
SP> инициативой я нашел очень неожиданное решение - два раза
SP> продекларировать в секции FROM таблицу "Счета", тогда все красиво - и
SP> с точки зрения оптимизатора, и с точки зрения самой задачи. Только
SP> нужно еще прогнать этот вариант на различные ситуаиции
SP> с блокировками и т.п.
Осталось лишь понять, зачем оно надо. Есть же возможность сделать нечто вpоде
=== Cut ===
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION dbo.akGetAccountCreditBalance2 (@AccountId INT)
RETURNS TABLE AS
RETURN
SELECT Currency."Id" AS CurrencyId, SUM(FM."Sum") AS "Sum"
FROM
AnAccountAndItsAncestors AA
INNER JOIN AFinanceMovement FM ON (AA.AccountId = FM.CreditAccountId)
INNER JOIN Currency ON (FM.CurrencyId = Currency."Id")
WHERE
(AA.AncestorId = @AccountId)
GROUP BY
Currency."Id"
GO
=== Cut ===
Akzhan
--- FMail/Win32 1.42/g
* Origin: MT Computers, mailto:akzhan@mtgroup.ru (2:5030/217)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms.sql/22713a684b2f.html, оценка из 5, голосов 10
|