Beam ZetaSQL 聚合函数
此页面记录了 Beam ZetaSQL 支持的 ZetaSQL 聚合函数。
运算符语法 | 描述 |
---|---|
COUNT(*) | 返回输入行的数量 |
AVG(FLOAT64) | 返回非 NULL 输入值的平均值 |
SUM(numeric) | 返回非 NULL 值的总和 |
MAX(value) | 返回最大非 NULL 值 |
MIN(value) | 返回最小非 NULL 值 |
AVG
AVG(expression)
描述
返回非 NULL
输入值的平均值。
支持的参数类型
FLOAT64。请注意,对于浮点输入类型,返回值是非确定性的,这意味着每次使用此函数时,您可能会收到不同的结果。
返回的数据类型
- FLOAT64
示例
SELECT AVG(x) as avg
FROM UNNEST([0, 2, NULL, 4, 4, 5]) as x;
+-----+
| avg |
+-----+
| 3 |
+-----+
COUNT
COUNT(*)
COUNT(expression)
描述
- 返回输入中的行数。
- 返回
expression
计算结果为除NULL
之外的任何值的行的数量。
支持的参数类型
expression
可以是任何数据类型。
返回的数据类型
INT64
示例
SELECT COUNT(*) AS count_star, COUNT(x) AS count_x
FROM UNNEST([1, 4, NULL, 4, 5]) AS x;
+------------+---------+
| count_star | count_x |
+------------+---------+
| 5 | 4 |
+------------+---------+
MAX
MAX(expression)
描述
返回非 NULL
表达式的最大值。如果存在零个输入行或 expression
对所有行计算结果为 NULL
,则返回 NULL
。
支持的参数类型
除以下类型之外的任何数据类型
ARRAY
STRUCT
返回的数据类型
与用作输入值的类型相同。
示例
SELECT MAX(x) AS max
FROM UNNEST([8, NULL, 37, 4, NULL, 55]) AS x;
+-----+
| max |
+-----+
| 55 |
+-----+
MIN
MIN(expression)
描述
返回非 NULL
表达式的最小值。如果存在零个输入行或 expression
对所有行计算结果为 NULL
,则返回 NULL
。
支持的参数类型
除以下类型之外的任何数据类型
ARRAY
STRUCT
返回的数据类型
与用作输入值的类型相同。
示例
SELECT MIN(x) AS min
FROM UNNEST([8, NULL, 37, 4, NULL, 55]) AS x;
+-----+
| min |
+-----+
| 4 |
+-----+
SUM
SUM(expression)
描述
返回非空值的总和。
如果表达式是浮点值,则总和是非确定性的,这意味着每次使用此函数时,您可能会收到不同的结果。
支持的参数类型
所有支持的数字数据类型。
返回的数据类型
- 如果输入是整数,则返回 INT64。
- 如果输入是浮点值,则返回 FLOAT64。
如果输入仅包含 NULL
,则返回 NULL
。
示例
SELECT SUM(x) AS sum
FROM UNNEST([1, 2, 3, 4, 5, 4, 3, 2, 1]) AS x;
+-----+
| sum |
+-----+
| 25 |
+-----+