連續值我有一個MySQL表是這樣的:檢查在MySQL查詢
ID - Time - Value
而且我得到每對ID的,時間(由ID分組),其中價值超過一定的閾值。所以基本上,我得到的每個ID至少有一次的值大於閾值。查詢看起來是這樣的:
SELECT ID, Time FROM mydb.MYTABLE
WHERE Value>%s AND Time>=%s AND Time<=%s
GROUP BY ID
編輯:時間檢查允許我所有的選擇是到表中的數據之間的時間範圍內進行操作;它與我所要求的沒有任何關係。
它完美的工作,但現在我想添加一些過濾:我希望它可以避免那些時間值大於閾值(讓我們稱之爲鬧鐘),如果鬧鐘還沒有發生,剛過。我的意思是:如果警報發生在單個孤立的瞬間,而不是兩個連續的時間,我會認爲這是一個虛驚,並避免它在查詢響應中返回。
當然,我可以通過調用每個Id來檢查這一點,但我希望在單個查詢中做到這一點,以使其更快。我想我可以使用條件,但是我沒有MySQL的專業知識。
任何幫助?
EDIT2:實施例爲閾值= 10
ID - Time - Value
1 - 2004 - 9
1 - 2005 - 11
1 - 2006 - 8
2 - 2107 - 12
2 - 2109 - 13
3 - 3402 - 11
3 - 3403 - 12
在這個例子中,只有ID 3應是一個有效的報警,由於用於這個ID 2個連續的時間值有其值>閾值。 ID 1有一個單獨的,孤立的警報,所以它應該是filteres。對於ID 2有兩個警報,但不是連續的,所以它也應該被過濾。
你有什麼樣的數據,使問題更清楚? – Verma
目前尚不清楚您的閾值/警報如何與您的查詢中已有的兩個時間參數相關,或者您打算如何處理閾值/警報。一個具體的例子可能有幫助 –