SQL按ID汇总所有行:使用sum()函数执行报错求解决方案
问题解决:SQL分组汇总Hour字段
你的查询语句存在两个关键问题:
- 缺少
GROUP BY子句:使用SUM()这类聚合函数时,SELECT语句中所有非聚合的字段(ID、Name)必须通过GROUP BY指定分组依据,数据库才能知道按照哪些维度汇总Hour值。 - 冗余的
WHERE条件:WHERE ID = ID是恒成立的条件,不会对数据产生任何过滤效果,完全可以删除。
正确的查询语句如下:
SELECT ID, Name, SUM(Hour) AS Hour FROM Table1 GROUP BY ID, Name;
说明:
GROUP BY ID, Name指定按ID和Name分组,确保同一个ID(对应同一个Name)的Hour值被汇总到一起。AS Hour给聚合后的字段指定别名,让结果列名和你期望的一致。
内容的提问来源于stack exchange,提问作者Ross
相关产品推荐
相关产品推荐

