|
|
su.dbms- SU.DBMS ---------------------------------------------------------------------- From : Sergey Pratch 2:5020/400 22 Aug 2002 20:29:16 To : Nik Sestrin Subject : Hа: Отчеты -------------------------------------------------------------------------------- Hi! "Nik Sestrin" <sestrin@astfnet.kuzbass.net> сообщил/сообщила в новостях следующее: news:ak2tkm$te1$1@flute.sinor.ru... > (Остатки на начало) + (приходы) - (расходы) = (остатки на конец) ... я > думаю так правильнее ... хотя это важно только для тебя. > > представь себе любое из этих выражений, заключенных в скобки достаточно > сложным селектом, в итоге дающим 2 колонки - код товара и количество. > > тогда группировка этого юниона по товару и сумма по количествам с > соответствующими знаками есть искомый результат. Да там и юнион-то не нужен! Просто делаем: F_ОстаткиHаКонец=SELECT(Остатки) + LeftJoinWithGroup(Приход) - LeftJoinWithGroup(Расход) Это если есть две стороны в движении - дебетовая и кредитовая, а иначе еще проще: F_ОстаткиHаКонец=SELECT(Остатки) + LeftJoinWithGroup(Двжение*Знак) > > Я не могу утверждать точно, что проблема, о которой писала Liliya Huff в > данной ситуации не существует (распараллеливание) - просто не знаю, но > хинтами это можно решить. Hа самом деле она права, т.е. ситуация такая возможна. но ждя этого нужно специально спроектировать так БД. Если же хоть немного задумыватся над совим детищем - все получается без диковинных проблем. -- С уважением, Сергей Прач ================= Please, send you private mail to: s_pratch@mail.ru --- ifmail v.2.15dev5 * Origin: LtawaSoft (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms/1678617714b1a.html, оценка из 5, голосов 10
|