按小时分组,然后在每组中计数#

时间:2015-06-10 18:22:59

标签: php mysql count group-by

我对目前的任务很困难。它涉及显示房间租赁中最受欢迎的时间。

我有一个大型数据库(250,000多个条目),输入日期/时间存储为日期时间。 例如:

2015-06-10 19:30:15
2015-06-10 18:30:15
2015-06-10 14:03:15
2015-06-09 16:30:15
2015-06-09 14:30:15
2015-06-09 14:50:15
2015-06-08 13:30:15
2015-06-08 14:05:15

我需要做的是按1小时间隔分组,然后返回每个间隔中的条目数。

示例(不反映第一个示例集中的数据):

09:01 - 10:00 = 2
10:01 - 11:00 = 3
10:01 - 12:00 = 6
12:01 - 13:00 = 8
13:01 - 14:00 = 5

我能够做到这一点的唯一方法就是为每个区间创建一个sql查询,但是我非常不满意这样做。

任何人都可以帮助我了解如何更好地完成此类查询吗?

P.S。我通过PHP访问MySQL,如果这与这个答案相关。

1 个答案:

答案 0 :(得分:1)

Select date_format(yourdatetime, '%H'), count(*)
From yourtable
Group by date_format(yourdatetime, '%H');
相关问题