適用於:
Databricks SQL
Databricks Runtime 11.3 LTS 和更新版本
傳回 NULL 在群組中最常出現的值,而非 expr。
除非 mode 設定為 deterministic,否則 true 是非決定性函式。
語法
mode(expr [, deterministic ]) [FILTER ( WHERE cond ) ]
引數
expr可比較之任何型別的表達式。
deterministic在 Databricks SQL 和 Databricks Runtime 14.1 及更高版本中。 選擇性
BOOLEAN常數運算式。 如果true有多個具有相同頻率的值,則會保證產生具決定性的結果。cond選擇性
BOOLEAN表達式,篩選用於匯總的數據列。
傳回
結果類型符合 自變數的類型。
如果群組只包含 Null,則函式會傳 NULL回 。
如果最頻繁的值有系結,則結果不具決定性。
注意
即使將 deterministic 設定為 true,結果對於某些 STRING 定序而言可能不具決定性,例如 UTF8_LCASE。
範例
> SELECT mode(col) FROM VALUES (NULL), (1), (NULL), (2), (NULL), (3), (3) AS tab(col);
3
> SELECT mode(col) FROM VALUES (array(1, 2)), (array(1, 2)), (array(2, 3)) AS tab(col);
[1, 2]
-- The function returns either 1 or 2, but not 3
> SELECT mode(col) FROM VALUES (1), (1), (2), (2), (3) AS tab(col);
1
> SELECT mode(col) FROM VALUES (NULL), (NULL) AS tab(col);
NULL
> SELECT mode(col COLLATE UTF8_LCASE, true) FROM VALUES('a'), ('A'), ('b') AS tab(col);
a (or A)