Aracılığıyla paylaş


array_sort 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

array öğesi func göre sıralanmış olarak döndürür.

Söz dizimi

array_sort(array, func)

Argümanlar

  • array: Dizi olarak değerlendirilen ifade.
  • func: Sıralama düzenini tanımlayan bir lambda işlevi.

İadeler

Sonucun türü, array türüyle eşleşir.

Atlanırsa func , dizi artan düzende sıralanır.

Eğer func sağlanırsa, dizinin iki öğesini temsil eden iki bağımsız değişken alır.

İşlev, ilk öğenin ikinci öğeden küçük, buna eşit veya ondan büyük olmasına bağlı olarak -1, 0 veya 1 döndürmelidir.

func diğer değerleri (NULL dahil) döndürürse array_sort başarısız olur ve bir hata oluşturur.

NULL öğeleri, döndürülen dizinin sonuna yerleştirilir.

Örnekler

> SELECT array_sort(array(5, 6, 1),
                   (left, right) -> CASE WHEN left < right THEN -1
                                         WHEN left > right THEN 1 ELSE 0 END);
 [1,5,6]
> SELECT array_sort(array('bc', 'ab', 'dc'),
                    (left, right) -> CASE WHEN left IS NULL and right IS NULL THEN 0
                                          WHEN left IS NULL THEN -1
                                          WHEN right IS NULL THEN 1
                                          WHEN left < right THEN 1
                                          WHEN left > right THEN -1 ELSE 0 END);
 [dc,bc,ab]
> SELECT array_sort(array('b', 'd', null, 'c', 'a'));
 [a,b,c,d,NULL]