regr_avgx
聚合函数
适用于: Databricks SQL Databricks Runtime 11.3 LTS 及更高版本
返回从 xExpr
和 yExpr
为 NOT NULL
的组的值计算出的 xExpr
的平均值。
语法
regr_avgx( [ALL | DISTINCT] yExpr, xExpr) [FILTER ( WHERE cond ) ]
还可以使用 OVER
子句将此函数作为窗口函数调用。
参数
yExpr
:一个数值表达式,因变量。xExpr
:一个数值表达式,自变量。cond
:一个可选的布尔表达式,可筛选用于函数的行。
返回
结果类型取决于 xExpr
的类型:
DECIMAL(p, s)
:结果类型为DECIMAL(p + 4, s + 4)``. If the maximum precision for ``DECIMAL
。如果达到 DECIMAL 的最大精度,则位数的增加将受到限制,以避免丢失有效数字。- 否则结果为
DOUBLE
。
忽略组中的任何 null 值。 如果组为空或仅包含 null,则结果为 NULL
。
如果指定了 DISTINCT
,则会在删除重复项后计算平均值。
regr_avgx(y, x)
是 avg(x) FILTER(WHERE x IS NOT NULL AND y IS NOT NULL)
的同义词。
示例
> SELECT regr_avgx(y, x) FROM VALUES (1, 2), (2, 3), (2, 3), (null, 4), (4, null) AS T(y, x);
2.6666666666666665