我有一张看起来像这样的 table
CREATE TABLE `time_table` (
`id` INT(10) NOT NULL AUTO_INCREMENT,
`creationDate` DATETIME NOT NULL,
PRIMARY KEY (`id`)
)
我基本上将某些记录的创建时间存储在表中。我知道是否要对在15分钟间隔内创建的记录进行计数,我将使用类似的方法
SELECT FLOOR(UNIX_TIMESTAMP(creationDate)/900) AS t,
COUNT(*) FROM time_table
GROUP BY t
那给我这样的东西
t COUNT(*)
1434187 1
1434188 3
1434189 2
1434190 2
我如何理解第一列?如果我想给我看类似的东西
t COUNT(*)
2:00pm - 2:15pm 1
2:15pm - 2:30pm 3
2:30pm - 2:45pm 2
2:45pm - 3:00pm 2
我了解通过一些操作,我可以在下午2:15出现1434187。甚至那可能是一个好的开始。。。然后我可以用一些逻辑来说明整个时期。谢谢!
最佳答案
一种方法是仅使用>
和<
来获取范围内的所有内容,但是您可能会发现这更简单:
SELECT ...
GROUP BY ( 4 * HOUR( thistime ) + FLOOR( MINUTE( thistime ) / 15 ))
从
http://forums.mysql.com/read.php?10,202789,202807
关于sql - Mysql DateTime组15分钟,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4289345/