Freigeben über


array_agg-Aggregatfunktion

Gilt für: Häkchen ja Databricks SQL Häkchen gesetzt ja Databricks Runtime 10.4 LTS und höher

Gibt ein Array zurück, das aus allen Werten in expr innerhalb der Gruppe besteht. Diese Funktion ist ein Synonym für die collect_list-Aggregatfunktion.

Syntax

array_agg ( [ALL | DISTINCT] expr ) [FILTER ( WHERE cond ) ]

Diese Funktion kann auch mithilfe der OVER-Klausel als Fensterfunktion aufgerufen werden.

Argumente

  • expr: Ein Ausdruck beliebigen Typs
  • 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.

Wenn DISTINCT angegeben wird, sammelt die Funktion nur eindeutige Werte und ist ein Synonym für die collect_set-Aggregatfunktion.

Beispiele

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