Share via


array_agg toplama işlevi

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 10.4 LTS ve üzeri

Gruptaki expr tüm değerlerden oluşan bir dizi döndürür. Bu işlev, collect_list toplama işlevinin eş anlamlısıdır.

Sözdizimi

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

Bu işlev yan tümcesi OVER kullanılarak bir pencere işlevi olarak da çağrılabilir.

Bağımsız değişkenler

  • expr: Herhangi bir türde bir ifade.
  • cond: Toplama için kullanılan satırları filtreleyerek isteğe bağlı bir boole ifadesi.

Döndürülenler

Bağımsız değişken türünde bir ARRAY.

Dizideki öğelerin sırası belirleyici değildir. NULL değerleri dışlanır.

Belirtilirse DISTINCT işlev yalnızca benzersiz değerler toplar ve collect_set toplama işlevi için bir eş anlamlıdır.

Örnekler

> 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]