Mysql 10min的平均数据

时间:2015-07-18 19:39:35

标签: mysql average

我有一个名为RawData的mysql表,我在每分钟写入值。 该表看起来像(我在分隔列中的日期和时间):

date            time        value
2015-07-17      15:56:04    33.00
2015-07-17      15:57:09    27.00

如果我想在18:00获得平均数据,则应计算平均值 价值从18:00到18:00。 (默认情况下,mysql不这样做)

我只想用这个查询计算平均值:

SELECT Date, convert((min(Time) DIV 1000)*1000,time) as Time,Value FROM RawData
Group By Date, Time DIV 1000

提前致谢, 丹尼尔

1 个答案:

答案 0 :(得分:0)

假设time采用时间格式,则以下内容应符合您的要求:

select date, maketime(hour(time), 10 * floor(minute(time)/10), 0) as time,
       avg(value)
from rawdata 
group by date,  maketime(hour(time), 10 * floor(minute(time)/10), 0)
order by date, time;