![]() |
#3 |
Участник
|
Цитата:
Сообщение от ZVV
![]() 2 Rimantas
Одним запросом это можно сделать через Outer Join с группировкой, примерно так: X++: Select sum(xxxQty), sum(yyyAmount), ... from InventSum group by ItemId, InventDimId, ... outer join InventTrans group by ItemId where InventTrans.InventDimId == InventSum.InventDimId && InventTrans.ItemId == InventSum.ItemId && InventTrans.DatePhysical >= dBgn; В цикле проверять заполненность поля InventTrans.ItemId - если есть, то это ваш первый случай, если нет - второй. Насколько это будет быстрее или медленнее, и, соответсвенно, целесообразно использовать, проверьте сами на своих данных. товар кол1 приход отход кол2 тов1 0 10 -10 0 - в инветСумме уже нету , но были движения , тов2 10 0 -10 0 - тоже самое , тов22 0 10 0 10 - были движения , есть в инвентсумме , тов3 10 0 0 10 - нету движении ... В моем варянте , 2-ом , чтобы неискать я сделал условие "!= 0" для количества в инвентсумме - чтобы поскорее все работало ... А можно как нибудь ещё добавить "или" в query ИнвентСума такое ? |
|