php - 按一天中的小时分组,然后计算每组中的#

标签 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 小时间隔进行分组,然后返回每个间隔中的条目数。

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

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 查询,但我非常不满意在那个庄园里这样做。

谁能帮助我了解如何更好地完成此类查询?

附注如果这与这个答案相关,我正在通过 PHP 访问 MySQL。

最佳答案

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

关于php - 按一天中的小时分组,然后计算每组中的#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30764369/

相关文章:

html - 在mysql中获取总数和组数

javascript - 用 JavaScript 计算单词

php - 为 PHP 对象属性赋值

mysql - 按提供的标签过滤表 - 事件记录

php - 将行列表从一个表传输到另一个表

MYSQL CASE 语句(if/else)

sql - 在GROUP BY c之后如何计算(DISTINCT a,b)

php - 如何计算字符串中 "letter numbers"的总和?

javascript - Laravel - Javascript 在 JSFiddle 中工作,但在 Blade 中不起作用

php - 我是否需要使用 JSON 将数据从外部 PHP 服务器传输到 Phonegap iPhone 应用程序?