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

如何编写带GROUP BY的MySQL查询:求和并追加关联统计列

如何在MySQL查询中按用户分组并统计指定日期的销量?

你可以通过条件聚合实现需求,在现有查询基础上添加两个带CASE判断的SUM()函数即可,完整SQL如下:

SELECT 
  user,
  SUM(products_sold) AS total_sold,
  SUM(CASE WHEN day = 'Tuesday' THEN products_sold ELSE 0 END) AS tuesday_total,
  SUM(CASE WHEN day = 'Thursday' THEN products_sold ELSE 0 END) AS thursday_total
FROM sales
GROUP BY user
ORDER BY total_sold DESC;

逻辑说明:

  • 用CASE语句筛选对应日期的销售记录,仅对符合条件的products_sold进行求和;
  • 加入ELSE 0是为了保证用户没有对应日期的销售数据时,返回0而非默认的NULL,完全匹配你期望的结果格式;
  • 保留了你原有的分组和排序逻辑,无需调整分组规则。

执行该查询后,会得到目标结果:

user      | total_sold | tuesday_total | thursday_total
Bob       | 17         | 10            | 7
Randy     | 12         | 0             | 12

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 08:57:16