0
检查我有表如下更新,并在同一时间
CatID| Total_Amount | Amount_paying |IsCompleted
-----|--------------|---------------|------------
CA01 | 2000 | 1700 | 0
在这个表我要检查是否TOTAL_AMOUNT和amount_paying是相同或不? 其中total_amount是固定的,且amount_paying将在每个插入语句后最大化。
所以如果我插入一条记录
CatID| Total_Amount | Amount_paying |IsCompleted
-----|--------------|---------------|------------
CA01 | 2000 | 1700 | 0
CA01 | 2000 | 300 | 1
在这里,我付300,所以TOTAL_AMOUNT = Amount_Paying和IsCompleted = 1
UPDATE tbl
SET is_completed = CASE WHEN SUM(amount_paying) = Total_Amount THEN 1 ELSE 0 END
WHERE tbl.branch_id [email protected] AND [email protected]
给An aggregate may not appear in the set list of an UPDATE statement.
您的意思是“如果总和(amount_paying)= 2000那么1 ELSE 0'? Yourr问题不清楚,如果插入另一行'SUM(amount_paying)'>> 2000 – Sami
sum(amount_paying)> 200?会发生什么?真假 – Babai