[mysql]按月/年分组和所有数据都求和

标签: MySQL
发布时间: 2015/6/12 1:02:28
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我想一些寄存器组的几个月,具有其值增加,但到目前为止没有成功。一直在寻找通过的问题,但还没有发现这一点。

我的表有点像:

+----+------------+--------+--------+
|Id |    日期    |Field1 |Field2 |
+----+------------+--------+--------+
|  1 |2014-02-01 |      4 |      5 |
|  2 |2014-02-01 |      2 |      9 |
|  3 |2014-02-20 |      2 |      6 |
|  4 |2014-03-01 |      1 |      4 |
|  : 三2014-04-03 |      1 |      5 |
+----+------------+--------+--------+

我想要完成这一点:

+---------+--------+--------+
|  日期   |Field1 |Field2 |
+---------+--------+--------+
| 2014-02 |      8 |     20 |
|2014-03 |      1 |      4 |
|2014-04 |      1 |      5 |
+---------+--------+--------+

什么建议吗?

解决方法 1:

一个办法是到上的 MySQL 的结果组 DATE_FORMAT() 函数:

SELECT   DATE_FORMAT(Date, '%Y-%m') Date, SUM(Field1) Field1, SUM(Field2) Field2
FROM     my_table
GROUP BY DATE_FORMAT(Date, '%Y-%m')

sqlfiddle中看到。

官方微信
官方QQ群
31647020