|
![]() |
#1 |
Участник
|
Я обычно в таких случаях "выворачиваю" запрос так чтобы внешней оказалась та таблица по которой задана агрегатная функция. Тем более в данном примере дополнительные таблицы нужны разве что для фильтрации (поле AssetStandardId есть непосредствено в таблице проводок RAssetTrans)
X++: static void Job15(Args _args) { TextBuffer text = new TextBuffer(); RAssetTrans RAssetTrans; RAssetTable RAssetTable; TransDate _transDate = 31\01\2011; ; while select sum(AmountMST) from RAssetTrans group by AccountNum, AssetStandardId, AssetTransType where RAssetTrans.TransDate <= _transDate // exists join RAssetTable // where // RAssetTable.AccountNum == RAssetTrans.AccountNum { text.appendText(strfmt("%1\t%2\t%3\t%4\n", RAssetTrans.AccountNum, RAssetTrans.AssetStandardId, RAssetTrans.AssetTransType, RAssetTrans.AmountMST)); } text.toClipboard(); } |
|
|
За это сообщение автора поблагодарили: ZornFire (1). |