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

SQL查询优化:实现2022年汽车折扣后均价的无重复月度聚合

解决按月统计汽车折扣后均价的问题

原查询出现月份重复的核心问题是:你用了GROUP BY date,这是按具体日期分组,同一个月里的不同日期会被拆成不同组,自然会输出多条同月份的记录。要实现每月一条聚合数据,得按年份和月份来分组,修改后的SQL如下:

SELECT 
    EXTRACT(MONTH FROM date) AS month,
    EXTRACT(YEAR FROM date) AS year,
    ROUND(AVG(price * (100 - discount) / 100), 2) AS price_avg
FROM brandorigin
WHERE EXTRACT(YEAR FROM date) = 2022
GROUP BY EXTRACT(YEAR FROM date), EXTRACT(MONTH FROM date)
ORDER BY month ASC;

关键修改说明:

  • 将GROUP BY date替换为GROUP BY EXTRACT(YEAR FROM date), EXTRACT(MONTH FROM date):这样同一年同一月的所有数据会被合并为一组,刚好对应每月一条聚合结果
  • WHERE条件里的'2022'去掉引号,因为EXTRACT返回数值类型,直接用2022更严谨
  • 排序改为按month升序,比按原date排序更贴合月度统计的需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 11:42:03