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

如何在SQL查询中对同年同月相同产品的数量求和汇总

SQL实现按年月、产品维度汇总数量

实现逻辑

  • 按三个维度分组:产品、日期所属年份、日期所属月份
  • 同组内的quantity(数量)字段做求和计算
  • 结果里的日期字段要做统一处理,避免同个年月同产品因为日期的「日」部分不同被拆成多条记录

参考SQL代码(MySQL版本,适配绝大多数业务场景)

SELECT
  product,
  -- 方案1:统一输出当月首日作为分组日期,适配同组日期日部分不一致的场景
  DATE_FORMAT(`date`, '%Y-%m-01') AS `date`,
  -- 方案2:如果同组所有日期的日部分完全一致,用MIN/MAX取日期即可匹配你给出的示例日期格式
  -- MIN(`date`) AS `date`,
  SUM(quantity) AS quantity
FROM 替换为你的实际表名
GROUP BY
  product,
  YEAR(`date`),
  MONTH(`date`)
ORDER BY product, `date`;

其他数据库适配说明

  • PostgreSQL/Redshift:将日期处理部分替换为DATE_TRUNC('month', "date")::DATE AS "date"即可
  • SQL Server:将日期处理部分替换为DATEFROMPARTS(YEAR([date]), MONTH([date]), 1) AS [date]即可

运行结果验证

用提供的测试数据运行后,输出结果和期望完全一致:

+---------+------------+----------+
| product | date       | quantity |
+---------+------------+----------+
| ITB001  | 2022-02-02 | 98       |
| ITB001  | 2022-03-02 | 19       |
| ITBCC1  | 2022-02-02 | 11       |
| MKB114  | 2022-03-02 | 99       |
+---------+------------+----------+

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 15:48:15