有没有办法让我可以获得当天的价值,但在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;
答案 0 :(得分:4)
将时间戳分类为它们落入的小时(使用整数除法),然后group by
该分类。因此,您的内部查询将如下所示:
SELECT MAX(dt) max_dt
FROM my_table
GROUP BY DATE(dt), HOUR(dt), MINUTE(dt) DIV 15