我有以下表格数据:
ID DATA VALUE
1 SUM 10
1 SUM 20
1 SUM 30
1 MIN 30
现在我想找到总共1个ID。
答案 0 :(得分:3)
这将有效:
SELECT
ID,
SUM(CASE(DATA)
WHEN 'SUM' THEN VALUE
ELSE -VALUE
END) TOTAL
FROM #TEMP
GROUP BY ID
答案 1 :(得分:1)
我想你想要:
select sum(case when data = 'sum' then value
when data = 'min' then - value
end) as total
from t
where id = 1;
数据值SUM
和MIN
确实是非常糟糕的选择,因为这些是执行不同操作的SQL函数的名称。我可能只是建议+
和-
或加/减或加/减。