【发布时间】:2016-03-28 04:46:58
【问题描述】:
我有这个专栏(日期时间类型)
Begin time
===================
2015-12-04 00:00:06
2015-12-04 00:00:09
2015-12-04 00:00:10
2015-12-04 00:00:13
2015-12-04 00:00:18
2015-12-04 00:00:22
2015-12-04 00:00:33
2015-12-04 00:00:47
2015-12-04 00:01:00
2015-12-05 00:01:00
2015-12-05 00:01:07
2015-12-06 00:01:09
2015-12-06 00:01:11
2015-12-06 00:01:32
2015-12-06 00:01:34
2015-12-07 00:02:00
2015-12-07 00:02:59
如何从列中获取每分钟/每小时的数据并将其分组如下:
Time | Count
00:00:00 - 00:00:59 | 8
00:01:00 - 00:01:59 | 7
00:02:00 - 00:02:59 | 2
00:03:00 - 00:03:59 | 0
...
23:59:00 - 23:59:59 | 0
我认为它与Grouping into interval of 5 minutes within a time range 不同,因为我需要从每个日期获取所有数据并将其汇总到 1 列中。 例如,我的列中有两个相似的数据,但日期不同
Begin time
================
2015-12-05 00:01:00
2015-12-06 00:01:09
从这些数据中,我需要这样的数据输出:
Time | Count
00:00:00 - 00:00:59 | 0
00:01:00 - 00:01:59 | 2
00:02:00 - 00:02:59 | 0
00:03:00 - 00:03:59 | 0
...
23:59:00 - 23:59:59 | 0
非常感谢大家的帮助!
【问题讨论】:
-
将所有这些
.更改为-,这样您就可以在该列上本地使用 mysql 日期函数而无需任何转换。然后你可以使用group by date_format(time, '%H')按小时分组,然后使用order by date_format(time, '%i');按分钟排序