ここに私が始めているコードがありますが、それはうまく機能しません:
UPDATE mt
SET mt.action = 'A', mt.TQA = TRUE,
mt.OPID = 'SYS', mt.rc= 'DAR', mt.h='DAR'
WHERE EXISTS
(
SELECT mt.Account FROM mt AS pm
WHERE mt.Account = pm.Account
GROUP BY pm.Account, pm.[amount] + Nz(pm.[SFS],0)
HAVING (pm.[amount] + Nz(pm.[SFS],0) > 500)
);
必要なのは、アカウントのすべてのインスタンスの金額と SFS の合計で、500 を超えています。
たとえば、次のテーブルがある場合
Account Amount SFS
123 350.00 0.00
123 125.00 125.00
123 350.00 0.00
123 125.00 125.00
234 1600.00 5.00
345 2.50 4.60
私は取得する必要があります
123 1200.00
234 1605.00
上記のコードで得られるのは、グループではなく、さまざまな合計のみです。つまり、500 を超える値には引っかかりません。
123 350.00
123 250.00
234 1605.00
誰でも助けることができますか?これは私たち5人が困惑しています。