array_sort
Fungsi
Berlaku untuk: pemeriksaan Databricks SQL Databricks Runtime
Mengembalikan yang diurutkan array
sesuai dengan func
.
Sintaks
array_sort(array, func)
Argumen
array
: Ekspresi yang mengevaluasi ke array.func
: Fungsi lambda yang mendefinisikan urutan sortir.
Kembali
Jenis hasil cocok dengan jenis array
.
Jika func
dihilangkan, array diurutkan dalam urutan naik.
Jika func
disediakan dibutuhkan dua argumen yang mewakili dua elemen array.
Fungsi harus mengembalikan -1, 0, atau 1 tergantung pada apakah elemen pertama kurang dari, sama dengan, atau lebih besar dari elemen kedua.
func
Jika mengembalikan nilai lain (termasuk NULL), array_sort
gagal dan menimbulkan kesalahan.
Elemen NULL ditempatkan di akhir array yang dikembalikan.
Contoh
> 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]