mean
集計関数
適用対象: Databricks SQL Databricks Runtime
グループの値から計算された平均を返します。 この関数は、avg 集計関数のシノニムです。
構文
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