在mysql中获得15分钟间隔的结果

时间:2014-03-27 23:58:53

标签: mysql intervals

有没有办法让我可以获得当天的价值,但在15分钟的时间间隔内,我应该怎么做?我希望结果看起来像这样:

+--------------------+-------+
| Date/Time          | Value |
+--------------------+-------+
| 2014-01-01 8:00:10 |  10   |
| 2014-01-01 8:15:05 |  11   |
| 2014-01-01 8:30:04 |  24   | 
+--------------------+-------+

我正在使用此查询,但这会获取每小时的数据,现在我需要15分钟的间隔

SELECT x.* 
 FROM my_table x 
 JOIN 
    ( SELECT MAX(dt) max_dt 
        FROM my_table 
       GROUP BY DATE(dt),HOUR(dt)
    ) y
   ON y.max_dt = x.dt;

1 个答案:

答案 0 :(得分:4)

将时间戳分类为它们落入的小时(使用整数除法),然后group by该分类。因此,您的内部查询将如下所示:

SELECT MAX(dt) max_dt
FROM   my_table
GROUP  BY DATE(dt), HOUR(dt), MINUTE(dt) DIV 15