每个Distinct名称的总数量

时间:2013-09-21 14:03:12

标签: mysql sql

user1 90 add
user2 60 remove
user3 70 remove
user2 80 remove
user2 80 remove
user1 70 remove
user3 20 add
user4 10 add

我需要sql查询来获取每个用户的总数。在这种情况下,user1 i should get 20

user4 --> 10
user3 --> -50

我试过了:

SELECT description, SUM( money ) FROM jabeda GROUP BY description 

怎么做?

1 个答案:

答案 0 :(得分:5)

SELECT  col1, 
        SUM(CASE WHEN col3 = 'add' THEN col2 ELSE col2 * -1 END) TOtals
FROM    tableName
GROUP   BY col1

我不确定列的名称,但查询肯定会对您有所帮助。 Col1这是user的名称。 Col2Col3的一部分,而行动类型是add

查询的作用是检查类型是remove还是remove。碰巧为-1时,该值乘以{{1}}以取消该值。