我有時間戳,溫度和溼度表。我想在溼度高於80%的時候獲得平均溫度。像如何在一段時間內創建GROUP BY?
東西SELECT MIN(DTM), MAX(DTM), AVG(TMP) GROUP BY(WHERE HMD> 80)
這可能嗎?
謝謝
雨果
我需要的是定義當humidty上升80%,並最終以上談到波紋管時啓動週期。然後,我必須得到BEGIN時間戳結束時間戳和平均溫度
我有時間戳,溫度和溼度表。我想在溼度高於80%的時候獲得平均溫度。像如何在一段時間內創建GROUP BY?
東西SELECT MIN(DTM), MAX(DTM), AVG(TMP) GROUP BY(WHERE HMD> 80)
這可能嗎?
謝謝
雨果
我需要的是定義當humidty上升80%,並最終以上談到波紋管時啓動週期。然後,我必須得到BEGIN時間戳結束時間戳和平均溫度
在GROUP BY子句中你需要使用CASE代替WHERE:
SELECT MIN (DTM), MAX (DTM), AVG(TMP) GROUP BY (CASE WHEN HMD>80 THEN HMD END);
更多類似:
SELECT MIN (DTM), MAX (DTM), AVG(TMP) FROM tbl WHERE HMD>80 GROUP BY location
但是,您的主要問題是提取有效範圍,因爲HMD > 80
將返回符合條件的所有行,而不管它們是否處於相同期間。
如果你確實需要事先提取的有效範圍,你可能想訪問這個線程:通過什麼
'location'從哪裏來? – 2011-05-27 19:37:26
它來自無處。無論如何他的查詢無效,因爲它沒有'from'子句。但我假設他試圖平均每個城市/地區/位置/某事。 – 2011-05-27 19:39:00
你想組?您應該具有不同的具體數值,以便按例如時間戳的一天。 – 2011-05-27 19:32:04
因此,您需要查找整個範圍內溼度保持在80%以上的連續時間戳的一個或多個範圍? – 2011-05-27 19:33:38
這就是我需要的 – Hugo 2011-05-27 22:32:35