在MySQL中计算5分钟间隔的平均值

calculate averages for 5 min intervals in mysql(在MySQL中计算5分钟间隔的平均值)
本文介绍了在MySQL中计算5分钟间隔的平均值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个表log,其中包含id、Value、Category和Timestamp列。假设表格按如下方式填写:

ID   VALUE        CATEGORY   TIMESTAMP
-----------------------------------------------
1     10             1       2010-11-1 10:00:00
2     20             1       2010-11-1 10:03:00
3     15             2       2010-11-1 10:15:00
4     05             2       2010-11-1 10:19:00
5     30             1       2010-11-1 10:24:00
6     12             1       2010-11-1 10:30:00
现在,我想为指定的检查生成一个表,从最后一个检查条目开始,每隔5分钟为列值生成一个avg()。Check=1的输出应如下所示:
ID AVERAGE
----------
1  12
2  30
3  15

check=2的输出应为:

ID AVERAGE
----------
1  10

处理这一问题的最佳方法是什么?我对MySQL有基本的了解,但这让我感到困惑。我认为查询的一部分如下所示(不包括5分钟间隔分组):

SELECT avg(value) FROM log WHERE check = ..
如何使用时间戳生成5分钟间隔平均值?我们非常感谢您的帮助。

推荐答案

请参阅this。

select AVG(value),  from_unixtime(ROUND(timestamp / (60*5)) * 60 * 5) as rounded_time
from table
group by rounded_time

这篇关于在MySQL中计算5分钟间隔的平均值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Execute complex raw SQL query in EF6(在EF6中执行复杂的原始SQL查询)
Hibernate reactive No Vert.x context active in aws rds(AWS RDS中的休眠反应性非Vert.x上下文处于活动状态)
Bulk insert with mysql2 and NodeJs throws 500(使用mysql2和NodeJS的大容量插入抛出500)
Flask + PyMySQL giving error no attribute #39;settimeout#39;(FlASK+PyMySQL给出错误,没有属性#39;setTimeout#39;)
auto_increment column for a group of rows?(一组行的AUTO_INCREMENT列?)
Sort by ID DESC(按ID代码排序)