gpt4 book ai didi

mysql - 如何在 Mysql 中获取最近 10 分钟内每 5 分钟的汇总数据?

转载 作者:行者123 更新时间:2023-11-29 01:52:58 26 4
gpt4 key购买 nike

我有一个表,其中包含每分钟同一时间间隔的多个数据。我想在过去 10 分钟内每 5 分钟汇总一次数据。我已经尝试了堆栈溢出提供的所有解决方案,但它没有为我获取准确的数据,因为他们都没有尝试获取固定时间间隔的数据。

我正在使用这个查询:

SELECT ROUND(unix_timestamp(footable.createdTime)/(60 * 5)) AS timekey, avg(mainData) as aggData
FROM footable
WHERE footable.createdTime > date_sub(now(), INTERVAL 10 MINUTE)
GROUP BY timekey

它应该每次最多返回 2 条记录,但大多数时候它返回 3 条记录。

注意:- 表格包含其确认的每一分钟的数据,这是 10 分钟的测试条件,它可能是上一小时的数据。这不是重复的问题,请仔细阅读说明。

任何帮助将不胜感激..!!

最佳答案

我自己弄明白了,下面是解决问题的查询:

SET @timeStmp := UNIX_TIMESTAMP(date_sub(now(), INTERVAL 10 MINUTES));
SELECT @timeStmp := IF(((unix_timestamp(footable.createdTime) - @timeStmp) >= 295), unix_timestamp(footable.createdTime),@timeStmp) as timekey, avg(mainData) as aggData
FROM footable
WHERE footable.createdTime > date_sub(now(), INTERVAL 10 MINUTE)
GROUP BY timekey

此查询将在每次执行时提供准确的分钟到分钟间隔聚合数据。享受..!!

关于mysql - 如何在 Mysql 中获取最近 10 分钟内每 5 分钟的汇总数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36452343/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com