共用方式為


collect_set 聚合函數

適用於:核取記號為「是」Databricks SQL 核取記號為「是」Databricks Runtime

傳回一個陣列,其中包含在群組中 expr 的所有唯一值。

語法

collect_set(expr) [FILTER ( WHERE cond ) ]

您也可以使用 子句,將此函式叫用為 OVER

引數

  • expr:除了 以外的 MAP任何類型的表達式。
  • cond:選擇性布爾表示式,篩選用於匯總的數據列。

傳回

自變數類型的ARRAY。

陣列中的元素順序不具決定性。 NULL 值已排除。

範例

> SELECT collect_set(col) FROM VALUES (1), (2), (NULL), (1) AS tab(col);
 [1,2]

> SELECT collect_set(col1) FILTER(WHERE col2 = 10)
    FROM VALUES (1, 10), (2, 10), (NULL, 10), (1, 10), (3, 12) AS tab(col1, col2);
 [1,2]