嗨,大家好,这是我的名为“SAM”的表
ID | S_Date | S_MK | TID | Value |
===============================================
1 | 2012-12-11 | 1 | 112 | 23 |
2 | 2012-12-11 | 2 | 112 | 3 |
3 | 2012-12-11 | 1 | 113 | 22 |
4 | 2012-12-11 | 3 | 114 | 2 |
这应该是我的预期结果:具有相同T_ID的列“值”的总和:
S_Date | TID | sum(Value)|
===============================
2012-12-11 | 112 | 26 |
2012-12-11 | 113 | 22 |
2012-12-11 | 114 | 2 |
答案 0 :(得分:15)
select S_Date, TID, sum(Value)
from SAM
group by S_Date, TID
答案 1 :(得分:1)
如果您确实需要此结果集,只能通过T_ID进行分组,则可以使用此查询:
SELECT (SELECT top 1 S_Date FROM SAM as t1 WHERE t1.TID = t2.TID) as S_Date,
TID,
SUM(Value)
FROM SAM as t2
GROUP BY TID
答案 2 :(得分:0)
您必须使用聚合函数“sum”作为值列的总和。
select S_Date ,TID, Sum(Value) from Sam group by S_Date, TID
您还应该在select语句中使用group by子句中的所有列。
答案 3 :(得分:0)
SELECT *, SUM(Value) AS Value From SAM GROUP BY TID
这将通过汇总同一Value
列的TID
列来返回同一表。