HAVING子句用於指定過濾分組結果(GROUP BY)或彙總計算結果的條件。
文法
HAVING bool_expression
重要
-
HAVING子句用於過濾分組結果或彙總計算結果,WHERE子句用於在彙總計算之前過濾未經處理資料。
-
HAVING子句的過濾操作發生在分組(GROUP BY)之後,排序(ORDER BY)之前。
參數說明
|
參數 |
說明 |
|
bool_expression |
布林運算式。 |
樣本
-
樣本1:返回平均請求時間長度大於40秒的請求地址。
-
查詢和分析語句
* | SELECT avg(request_time) AS avg_time, request_uri GROUP BY request_uri HAVING avg(request_time) > 40 -
查詢和分析結果:查詢返回結果包含 avg_time 和 request_uri 兩個欄位,展示平均請求時間長度大於 40 秒的請求地址及其對應的平均請求時間長度。
-
-
樣本2:通過服務日誌中查詢Project的寫入情況,返回寫入延時大於1000微秒的Project。
-
查詢和分析語句
* | SELECT avg(latency) AS avg_latency, Project GROUP BY Project HAVING avg_latency > 1000 -
查詢和分析結果。查詢返回一條結果:avg_latency 為
1569.909090909091,Project 為對應專案名稱,表明該專案平均延遲大於 1000。
-