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)
說明
傳回非 null 值的總和。
如果表達式是浮點值,則總和是不確定的,這表示您每次使用此函數時可能會收到不同的結果。
支援的引數類型
任何支援的數值資料類型。
傳回資料類型
- 如果輸入是整數,則傳回 INT64。
- 如果輸入是浮點值,則傳回 FLOAT64。
如果輸入僅包含 NULL
,則傳回 NULL
。
範例
SELECT SUM(x) AS sum
FROM UNNEST([1, 2, 3, 4, 5, 4, 3, 2, 1]) AS x;
+-----+
| sum |
+-----+
| 25 |
+-----+