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

MySQL按年、月统计各公司产品销量的SQL查询问题

正确的MySQL查询语句实现按年、月、公司统计产品数量

这是能得到你预期结果的MySQL查询语句:

SELECT 
    YEAR(date) AS Year,
    MONTHNAME(date) AS Month,
    COUNT(*) AS Products,
    company AS Company
FROM database.products
WHERE YEAR(date) = 2022
GROUP BY YEAR(date), MONTH(date), company
ORDER BY MONTH(date), company;

原查询存在的问题:

  • 没有选择YEAR(date)字段,导致结果缺失年份列
  • GROUP BY仅按月份分组,未包含company,无法按公司维度拆分统计数据
  • 语句末尾多了一个多余的右括号)
  • WITH ROLLUP会生成汇总行,但你的预期结果不需要这类汇总数据,应当移除

正确语句的逻辑:

  • 明确指定需要返回的四个字段,完全匹配预期结果的列结构
  • GROUP BY同时包含年份、月份、公司三个维度,确保每个分组对应「某年-某月-某公司」的唯一组合,统计该组合下的产品总数
  • 增加ORDER BY子句,让结果按月份、公司排序,和预期结果的展示顺序一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 20:05:17