我有一个名为 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:09。 (默认情况下mysql不这样做)
我只用这个查询来计算平均值:
SELECT Date, convert((min(Time) DIV 1000)*1000,time) as Time,Value FROM RawData
Group By Date, Time DIV 1000
提前致谢, 丹尼尔
最佳答案
假设时间
采用时间格式,那么以下内容应该满足您的要求:
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;
关于Mysql 10min平均数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31494880/