mean
彙總函式
適用于: Databricks SQL Databricks Runtime
傳回從群組值計算的平均值。 此函式與 平均彙總函式同義。
語法
mean ( [ALL | DISTINCT] expr ) [FILTER ( WHERE cond ) ]
您也可以使用 OVER
子句,將此函式叫用為視窗函式。
參數
expr
:評估為數值的運算式。cond
:選擇性布林運算式,篩選用於匯總的資料列。
返回
結果類型會計算為 引數:
DECIMAL(p, s)
:結果類型為 。DECIMAL(p + 4, s + 4)
如果達到 DECIMAL 的最大有效位數,小數位數的增加會受到限制,以避免遺失有效位數。- 年月間隔:結果為
INTERVAL YEAR TO MONTH
。 - 日時間間隔:結果為
INTERVAL DAY TO SECOND
。 - 在所有其他情況下,結果都是 DOUBLE。
系統會忽略群組內的 Null。 如果群組是空的,或只包含 Null,則結果為 Null。
如果 DISTINCT
指定 ,則平均值會在移除重複專案之後計算。
警告
在 Databricks Runtime 中,如果 spark.sql.ansi.enabled 為 false
,則溢位會 NULL
傳回而不是錯誤。
例子
> SELECT mean(col) FROM VALUES (1), (2), (3) AS tab(col);
2.0
> SELECT mean(DISTINCT col) FROM VALUES (1), (1), (2), (NULL) AS tab(col);
1.5
> SELECT mean(col) FROM VALUES (1), (2), (NULL) AS tab(col);
1.5