regr_avgy:因变量均值
速查结论
regr_avgy(y, x) 是 Spark SQL 中用于计算组内非空值对的因变量(y)平均值的聚合函数。
语法
regr_avgy(y, x)
参数说明
| 参数 | 说明 |
|---|---|
| y | 因变量(dependent variable),数值类型 |
| x | 自变量(independent variable),数值类型 |
函数仅计算 y 和 x 均非 NULL 的行对。如果组内没有非空值对,返回 NULL。
示例
> SELECT regr_avgy(y, x) FROM VALUES (1, 2), (2, 2), (2, 3), (2, 4) AS tab(y, x);
1.75
> SELECT regr_avgy(y, x) FROM VALUES (1, null) AS tab(y, x);
NULL
> SELECT regr_avgy(y, x) FROM VALUES (null, 1) AS tab(y, x);
NULL
> SELECT regr_avgy(y, x) FROM VALUES (1, 2), (2, null), (2, 3), (2, 4) AS tab(y, x);
1.6666666666666667
> SELECT regr_avgy(y, x) FROM VALUES (1, 2), (2, null), (null, 3), (2, 4) AS tab(y, x);
1.5
常见报错与避坑指南
- NULL 值导致结果变化:当部分行的 y 或 x 为 NULL 时,这些行被排除,结果仅基于非空值对计算。
- 与 AVG(y) 的区别:regr_avgy 只计算 y 和 x 均非空的行,而 AVG(y) 仅要求 y 非空。
Since: 3.3.0
📱关注公众号
「数据仓库技术」文章同步更新,不错过每一篇干货

💬加群交流
备注「数据仓库技术」加入社群,每日一道大厂SQL真题
