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

如何在MySQL中借助其他表属性分组查询并统计月度销量

解决方案:统计含零销量的月度销售记录数

要实现包含销量为0的月度统计,核心是从Month表(全量月份)出发做左连接,确保所有月份都能出现在结果中。以下是具体SQL语句:

SELECT 
    m.MonthName,
    COUNT(s.Date) AS SaleRecordCount
FROM 
    Month m
LEFT JOIN 
    Date d ON m.MonthID = d.Month
LEFT JOIN 
    Sales s ON d.DateID = s.Date
GROUP BY 
    m.MonthID, m.MonthName
ORDER BY 
    m.MonthID;

关键说明:

  • 左连接的作用:以Month表为主表,依次左连接Date和Sales表,这样即使某个月份没有对应的日期记录或销售记录,该月份依然会被保留在结果集中。
  • 统计逻辑:COUNT(s.Date)会忽略NULL值,当某个月份没有销售记录时,s.Date为NULL,统计结果即为0,符合需求。
  • 分组依据:按MonthID(主键)分组保证每个月份唯一,同时带上MonthName用于展示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 01:25:24