0

我正在尝试对两列求和,然后减去这两个总和以获得两列的余额。但是即使我知道有负值,我也会为这两个查询得到相同的输出。我需要在查询中排除那些负值。

SELECT SUM(ReceiptAmt) - SUM(BalanceAmt) FROM Receipt 
SELECT SUM(ReceiptAmt) - SUM(BalanceAmt) FROM Receipt WHERE ReceiptAmt > 0.00

关于如何排除负值的任何想法?甚至对此采取不同的方法。

4

2 回答 2

2

这可能是你所追求的:

SELECT 
  SUM(case when ReceiptAmt<0 then 0 else ReceiptAmt end) - 
  SUM(case when BalanceAmt<0 then 0 else BalanceAmt end) 
FROM Receipt            
于 2009-07-17T15:31:31.467 回答
0

BalanceAmt 也应该在 where 子句中吗?

WHERE ReceiptAmt > 0.00 
      AND BalanceAmt > 0.00
于 2009-07-17T15:27:08.777 回答