我正在尝试执行一个sql来检索开始时间和行数,在对时间段进行分组后。我已经检查了计算器上,我可以acheive这样做按时间排序的MySQL组
GROUP BY UNIX_TIMESTAMP(time_stamp) DIV 30
的问题是,我需要这具有一定的时间开始(它可能或行之间不存在),甚至(如果possible--不需要考虑)也可以添加0个计数项目的时间。
例如,具有与该行的表:
+---------------------+-----------------+
| time_stamp | id |
+---------------------+-----------------+
| 2010-06-15 23:00:04 | 1 |
| 2010-06-15 23:00:30 | 2 |
| 2010-06-15 23:01:30 | 3 |
| 2010-06-15 23:03:30 | 4 |
| 2010-06-15 23:04:30 | 5 |
| 2010-06-15 23:06:10 | 6 |
| 2010-06-15 23:06:20 | 7 |
| 2010-06-15 23:06:30 | 8 |
| 2010-06-15 23:06:30 | 9 |
| 2010-06-15 23:06:35 | 10 |
+---------------------+-----------------+
和开始2010-06-15 23时○○分00秒,每分钟(DIV 60),我想有以下输出:
+---------------------+-----------------+
| time_stamp | count(id) |
+---------------------+-----------------+
| 2010-06-15 23:00:00 | 2 |
| 2010-06-15 23:01:00 | 1 |
| 2010-06-15 23:02:00 | 0 |
| 2010-06-15 23:03:00 | 1 |
| 2010-06-15 23:04:00 | 1 |
| 2010-06-15 23:05:00 | 0 |
| 2010-06-15 23:06:00 | 5 |
+---------------------+-----------------+
。即使没有count = 0的情况也会很酷。
Also..adding每一个时间戳,然后删除它是没办法了..
这些都是假的DATAS,我不想只分来划分,而是由PHP
参数正确的答案可以找到here,但我只能通过帖子标记为接受。
你是什么意思一个参数? – 2014-09-01 05:07:42
这将是一个查询在PHP函数 – 2014-09-01 05:08:27
可能重复[分组的MySQL日期时间间隔,而不考虑时区](http://stackoverflow.com/questions/11789818/grouping-mysql-datetime-into-intervals-irrespective-of时区) – 2014-09-01 05:37:35