簡體   English   中英

MySQL獲取最近5分鍾時間戳的字段的最大值和最小值

[英]MySQL get max and min value of a field for last 5 minutes timestamp

我有一個腳本,可同時在MySQL表中插入許多條目。 這意味着我有> 100個具有相同時間戳的條目,另一個> 100個具有該時間戳加上1秒的條目...

該腳本會不定期地啟動,因此每次啟動腳本時,都會在幾分鍾內丟失很多條目。 我想檢索某個特定字段MYFIELD的最大值和最小值,以便僅查看時間戳的最后5分鍾,因此我可以從上一次腳本執行中獲取該最小值和最大值。

這可能嗎? 怎么樣?

首先找到最后一個時間戳:

SELECT MAX(timestamp)
FROM your_table;

並使用它來獲得MIN和MAX:

SELECT MIN(myfield), MAX(myfield)
FROM your_table
INNER JOIN (SELECT MAX(timestamp) as max FROM your_table) t ON TRUE
WHERE timestamp >= (max - interval 5 MINUTE);

一種方法是添加一列(例如insert_timestamp)以跟蹤插入行的時間戳。 因此查詢將非常簡單

select min(myfield), max(myfield) 
from mytable
where insert_timestamp between now() and (now() - interval 5 MINUTE)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM