適用於:
Databricks SQL
Databricks Runtime
傳回群組中擷取的數據列數目。
語法
count ( [DISTINCT | ALL] * ) [FILTER ( WHERE cond ) ]
count ( [DISTINCT | ALL] expr [, ...] ) [FILTER ( WHERE cond ) ]
引數
-
*:計算群組中的所有數據列。 -
expr:計算所有exprN不是NULL的所有數據列。 -
cond:選擇性布爾表示式,篩選用於匯總的數據列。
傳回
BIGINT。
若 DISTINCT 指定 ,則該函數回傳不包含 NULL的唯一值數量。
若 ALL 指定 ,則函式回傳所有值的數量。
*如果包含 ,則為 NULL。
範例
> SELECT count(*) FROM VALUES (NULL), (5), (5), (20) AS tab(col);
4
> SELECT count(1) FROM VALUES (NULL), (5), (5), (20) AS tab(col);
4
> SELECT count(col) FROM VALUES (NULL), (5), (5), (20) AS tab(col);
3
> SELECT count(col) FILTER(WHERE col < 10)
FROM VALUES (NULL), (5), (5), (20) AS tab(col);
2
> SELECT count(DISTINCT col) FROM VALUES (NULL), (5), (5), (10) AS tab(col);
2
> SELECT count(col1, col2)
FROM VALUES (NULL, NULL), (5, NULL), (5, 1), (5, 2), (5, 2), (NULL, 2), (20, 2) AS tab(col1, col2);
4
> SELECT count(DISTINCT col1, col2)
FROM VALUES (NULL, NULL), (5, NULL), (5, 1), (5, 2), (NULL, 2), (20, 2) AS tab(col1, col2);
3