You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL如何对同表不同行的整数/数值字段进行分组汇总

按ID分组汇总多行数值的SQL实现方案

核心是使用SQL标准的分组聚合逻辑,通过GROUP BY指定分组维度(这里是ID字段),搭配SUM()聚合函数对同组内的数值字段分别求和,即可得到单行汇总结果,该写法兼容绝大多数主流关系型数据库。

可直接复用的SQL语句

将语句中的表名替换为你实际使用的表名即可执行得到预期结果:

SELECT
  ID,
  SUM(Count) AS Count,
  SUM(`Total Payment`) AS `Total Payment`
FROM 你的实际表名
GROUP BY ID
ORDER BY ID;

注意事项

  • 字段名包含空格时(比如示例中的Total Payment),需要用对应数据库的标识符包裹符转义:MySQL使用反引号`,SQL Server使用方括号[],PostgreSQL、Oracle使用双引号",否则会触发语法错误。
  • 如果待求和的字段存在NULL值,SUM()函数默认会忽略NULL值不参与计算;如果需要将NULL视为0参与求和,可以嵌套COALESCE函数处理,例如SUM(COALESCE(Count, 0)) AS Count。
  • 如果需要固定金额字段的小数位数(比如示例中保留2位小数),可以嵌套四舍五入函数,例如MySQL中写ROUND(SUM(Total Payment), 2) AS Total Payment`,输出结果就会和示例预期完全一致。

计算逻辑验证:以ID=1的数据为例,Count求和为5+3=8,Total Payment求和为10.99+4.86=15.85,和预期结果完全匹配;其余ID分组的计算逻辑同理。

内容的提问来源于stack exchange,提问作者JocWiil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 22:36:23