SQL to SUM仅正数

时间:2019-04-23 23:22:12

标签: sql sum numbers sumifs

我有一列同时具有正数和负数的数据。我需要SQL才能查找并仅添加正值。

我正在尝试将JE的总积分(负数)和总借方(正数)相加。因此,我有一个单列(AMOUNT),同时具有正数和负数。在我的TOTALCREDIT字段中,我需要代码告诉它查找和汇总AMOUNT列中的正数,而对于TOTALCREDIT字段,我只需要查找和添加AMOUNT列中的负数。我尝试了以下变化,但始终返回0。

总扣款

sum (case when AMOUNT >= 0 then AMOUNT else 0 end) as positive

TOTALCREDIT

sum (case when AMOUNT < 0 then AMOUNT else 0 end) as negative

因此,如果AMOUNT列包含25,-25、30,-30

  • TOTALDEBIT字段总计为55
  • TOTALCREDIT字段的总和为-55

所以我需要为每个字段输入1个字符串代码。

1 个答案:

答案 0 :(得分:0)

我会加入自己的生活

Transaction_Table =

  • transaction_id
  • customer_id
  • 金额

选择

  • x.customer_id
  • 总和(信用额)为TOTALCREDIT
  • 总和(借方金额)为借方金额

FROM Transaction_Table x

LEFT JOIN Transaction_Table的凭据x.transaction_id = cred.transaction_id且金额<0

x.transaction_id = cred.transaction_id和金额> = 0上的LEFT JOIN Transaction_Table deb

按x.customer_id分组


或者,如果您只是在查看整个表格的总数

选择

  • 总和(信用额)为TOTALCREDIT
  • 总和(借方金额)为借方金额

FROM Transaction_Table x

LEFT JOIN Transaction_Table的凭据x.transaction_id = cred.transaction_id且金额<0

x.transaction_id = cred.transaction_id和金额> = 0上的LEFT JOIN Transaction_Table deb