首页 >数据库 >mysql教程 >如何在 MySQL 中按月对汇总进行分组?

如何在 MySQL 中按月对汇总进行分组?

Patricia Arquette
Patricia Arquette原创
2024-11-21 05:41:10400浏览

How to Group Summing Totals by Month in MySQL?

在 MySQL 中按月分组汇总总计

问题:

您正在使用包含“total”列和“o_date”(订单日期)列的表。您需要计算每个月的总和,得到一个分组结果,其中键是月份(格式为月份名称),值是该月的总和。

示例表:

| total | o_date              |
|---|---|
| 35    | 01-11-2009 19:32:44 |
| 41.5  | 01-12-2009 22:33:49 |
| 61.5  | 01-23-2009 22:08:24 |
| 66    | 02-01-2009 22:33:57 |
| 22.22 | 02-01-2009 22:37:34 |
| 29.84 | 04-20-2009 15:23:49 |

期望结果:

Month Name Total
January 138
February 88.2
April 29.84

SQL 解决方案:

实现对此结果,使用以下 MySQL 查询:

SELECT MONTHNAME(o_date) AS MonthName, SUM(total) AS Total
FROM theTable
GROUP BY YEAR(o_date), MONTH(o_date);

解释:

  • MONTHNAME(o_date) 从 o_date 列中提取月份名称。
  • SUM(total) 计算每个组的总值之和。
  • GROUP BY YEAR(o_date), MONTH(o_date) 按年和月对结果进行分组,这实际上是按月分组一个人。

以上是如何在 MySQL 中按月对汇总进行分组?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn