Mysql 10min平均数据

标签 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: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/

相关文章:

mysql - 如何从数据库中删除?

mysql - 我将 WHERE 子句与 OR 一起使用,但出现错误

java - Spring Boot 中的 JPA native 查询中未设置参数

mysql - 下面的 left join sql 语句在做什么?

mysql - 找不到所请求的页面。 Joomla 3 网站

r - 如何根据 R 中的 ID 对列进行平均?

MATLAB Accumarray 加权平均值

average - 计算平均评分

python - 创建一个计算 3 个数字的平均值的 Python 函数

python - 如何根据第二列中的值计算一列的平均值?