在时间范围内的平均值

时间:2015-01-05 01:56:59

标签: mysql sql

我有一张像这样的表,

Datatime                 Values
2014-10-13 18:50:00     2
2014-10-13 18:51:00     4
2014-10-13 18:52:00     64
2014-10-13 18:53:00     123
2014-10-13 18:54:00     12312

(这只是数据库的一部分,它有1000多列,所以我只得到它的一小部分)

我想要做的是以15分钟的间隔获得列“值”的平均值

2 个答案:

答案 0 :(得分:1)

如果我理解您的要求,以下说明将解决您的问题:

 SELECT AVG(Values) FROM YourTableName where Datatime = "2014-10-13 18:51:00";

希望这会有所帮助。

答案 1 :(得分:0)

我认为您只想将时间转换为最近的15分钟间隔,然后使用group by

SELECT SEC_TO_TIME( (TIME_TO_SEC(datetime) DIV 900) * 900) AS Nearest15,
       avg(values)
FROM table
GROUP BY SEC_TO_TIME( (TIME_TO_SEC(datetime) DIV 900) * 900)
ORDER BY Nearest15;