collect_set
-Aggregatfunktion
Gilt für: Databricks SQL Databricks Runtime
Gibt ein Array zurück, das aus allen eindeutigen Werten in expr
innerhalb der Gruppe besteht
Syntax
collect_set(expr) [FILTER ( WHERE cond ) ]
Diese Funktion kann auch mithilfe der OVER
-Klausel als Fensterfunktion aufgerufen werden.
Argumente
expr
: Ausdruck beliebigen Typs, mit Ausnahme vonMAP
cond
: Ein optionaler boolescher Ausdruck, der die für die Aggregation verwendeten Zeilen filtert.
Gibt zurück
Ein ARRAY des Argumenttyps.
Die Reihenfolge der Elemente im Array ist nicht deterministisch. NULL-Werte werden ausgeschlossen.
Beispiele
> 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]