1
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 

这个怎么做?

4

1 回答 1

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

我不确定您的列的名称,但查询肯定会对您有所帮助。Col1这是user. Col2是数量,Col3而是一些动作类型。

查询所做的是检查类型是add还是remove。当它恰好是 时remove,该值被乘以-1否定该值。

于 2013-09-21T14:06:12.000 回答