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

如何按月份分组聚合产品表数据,统计各品类产品总价?

解决方案

嘿,这就给你搞定这个统计需求!首先看你的products表,datepurchased字段是'YYYY Month'这种格式,我给你准备了两种场景的SQL语句,你可以根据实际需要选:

场景1:按「年月组合」作为月份键(更精准,区分同月份不同年份的数据)

这应该是最常用的情况,毕竟2017年12月和2018年12月的数据肯定要分开统计对吧?

SELECT 
    datepurchased AS month_key,
    productcategory,
    SUM(productprice) AS total_category_price
FROM products
GROUP BY datepurchased, productcategory
ORDER BY datepurchased, productcategory;

语句说明:

  • datepurchased AS month_key:直接把原表的年月字段作为你要的「月份键」,重命名后更直观;
  • SUM(productprice):对每个年月+分类组合的产品价格求和,得到该分类在对应月份的总价;
  • GROUP BY datepurchased, productcategory:按年月和产品分类分组,确保每个分组都是唯一的年月+分类组合;
  • ORDER BY:让结果按年月、分类排序,方便查看。

场景2:只按「月份名称」作为键(忽略年份,把所有同月份的不同年份数据合并)

如果你不需要区分年份,只想看12月、1月这种跨年份的分类总价,就用这个版本:

SELECT 
    SUBSTRING_INDEX(datepurchased, ' ', -1) AS month_key,
    productcategory,
    SUM(productprice) AS total_category_price
FROM products
GROUP BY SUBSTRING_INDEX(datepurchased, ' ', -1), productcategory
ORDER BY month_key, productcategory;

语句说明:

  • SUBSTRING_INDEX(datepurchased, ' ', -1):从datepurchased字段里提取最后一部分(也就是月份名称),比如从'2017 December'里拿到'December';
  • 后续的分组、求和逻辑和场景1一致,只是分组依据变成了纯月份名称。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:34:51