Share via


array_sort Funkció

A következőre vonatkozik:yes Databricks SQL check marked yes Databricks Runtime

A szerint funcrendezett értéket ad array vissza.

Szintaxis

array_sort(array, func)

Argumentumok

  • array: Tömbre kiértékelt kifejezés.
  • func: A rendezési sorrendet meghatározó lambda függvény.

Visszatérési érték

Az eredmény típusa megegyezik a típusával array.

Ha func nincs megadva, a tömb növekvő sorrendben lesz rendezve.

Ha func meg van adva, két argumentumot vesz fel, amelyek a tömb két elemét képviselik.

A függvénynek -1, 0 vagy 1 értéket kell visszaadnia attól függően, hogy az első elem kisebb, egyenlő vagy nagyobb, mint a második elem.

Ha a függvény más értékeket ad vissza (beleértve a func NULL értéket is), array_sort az sikertelen lesz, és hibát jelez.

A null értékű elemek a visszaadott tömb végére kerülnek.

Példák

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