sql column - trans_value包含正值和负值。
所以我试图弄清楚如何设置正值和负值之和,这样我就可以计算出正数之和和负数之和多少。
所以最后,我可以减去两者,正面 - 负面。
编辑 我忘了在那之前提到
同一个表中也有列名产品ID,所以
product_id | trans_value
1 200
1 250
1 -150
2 500
2 -300
3 200
3 -150
所以我需要得到产品ID 1的总和,显示出来,然后是2,3等等。
感谢
答案 0 :(得分:3)
如果您只想查看每个product_id的总数
SELECT product_id, SUM(trans_value)
FROM table
GROUP BY product_id
ORDER BY product_id
如果你真的需要正面和负面的价值观:
SELECT SUM(IF(trans_value<0;trans_value;0)) neg, SUM(IF(trans_value>0;trans_value;0)) pos
FROM table
将负值的总和放在neg
中,pos
中的正值之和。 pos + neg
将是总和。
答案 1 :(得分:0)
SELECT SUM( trans_value ) AS sum FROM table WHERE trans_value > 0;