在进行求和时,我需要过滤特定的行。表结构和数据如下。

我希望所有行的[Gain/Lost]列值之和,但行WHERE [Reason] = 'Order Placed' AND [No Of Month Old] = 1除外。
对于以下情况,大小写值为-560。
发布于 2016-01-08 08:44:59
您用英语很好地描述了自己的条件--现在只需要用SQL编写同样的东西:
SELECT SUM([Gain/Lost]
FROM mytable
WHERE NOT ([Reason] = 'Order Placed' AND [No Of Month Old] = 1)发布于 2016-01-08 08:44:29
select userid, sum([Gain/Lost])
from tablename
where [Reason] <> 'Order Placed'
or [No Of Month Old] <> 1
group by userid发布于 2016-01-08 08:44:22
SELECT UserID,
SUM(CASE WHEN [Reason] = 'Order Placed' AND [No Of Month Old] = 1
THEN 0
ELSE [Gain/Lost]
END)
FROM tt
GROUP BY UserIDhttps://stackoverflow.com/questions/34672717
复制相似问题