median
聚合函數
適用於: Databricks SQL Databricks Runtime 11.3 LTS 和更新版本
傳回從群組值計算的中位數。
語法
median ( [ALL | DISTINCT] expr ) [FILTER ( WHERE cond ) ]
您也可以使用 子句,將此函式叫用OVER
為視窗函式。
引數
expr
:評估為數值或間隔的表達式。cond
:選擇性布爾表示式,篩選用於匯總的數據列。
傳回
下列說明如何計算結果類型:
- 年月間隔:結果為
INTERVAL YEAR TO MONTH
。 - 時間間隔:結果是
INTERVAL DAY TO SECOND
。 - 在其他所有情況下,結果都是 DOUBLE。
會忽略群組內的 Null。 如果群組是空的,或只包含 Null,則結果為 NULL
。
如果 DISTINCT
已指定,則會移除重複專案,並計算中位數。
此函式與 PERCENTILE_CONT(0.5) WITHIN GROUP (ORDER BY expr) 同義。
範例
> SELECT median(col) FROM VALUES (1), (2), (2), (3), (4), (NULL) AS tab(col);
2.0
> SELECT median(DISTINCT col) FROM VALUES (1), (2), (2), (3), (4), (NULL) AS tab(col);
2.5
> SELECT median(col) FROM VALUES (INTERVAL '1' YEAR), (INTERVAL '2' YEAR) AS tab(col);
1-6