次の方法で共有


regr_avgy 集計関数

適用対象:check marked yes Databricks SQL Databricks Runtime 11.3 LTS 以降

xExpryExprNOT NULL であるグループの値から計算された yExpr の平均を返します。

構文

regr_avgy( [ALL | DISTINCT] yExpr, xExpr) [FILTER ( WHERE cond ) ]

この関数は、OVER 句を使用して ウィンドウ 関数として呼び出すこともできます。

引数

  • yExpr: 数値式、従属変数
  • xExpr: 数値式、独立変数
  • cond: 関数に使用される行をフィルター処理するオプションのブール式。

戻り値

結果の型は、次の yExpr の型によって異なります。

  • DECIMAL(p, s): 結果の型は DECIMAL(p + 4, s + 4) です。DECIMAL の最大有効桁数に達した場合、有効数字の損失を避けるために小数部桁数の増加が制限されます。
  • それ以外の場合、結果は DOUBLE です。

グループ内の null 値はすべて無視されます。 グループが空の場合、または null 値のみで構成されている場合、結果は NULL になります。

DISTINCT を指定した場合は、重複が削除された後に平均が計算されます。

regr_avgy(y, x)avg(y) FILTER(WHERE x IS NOT NULL AND y IS NOT NULL) のシノニムです。

> SELECT regr_avgy(y, x) FROM VALUES (1, 2), (2, 3), (2, 3), (null, 4), (4, null) AS T(y, x);
  1.6666666666666667