Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Funzione
Si applica a:
Databricks SQL
Databricks Runtime
Restituisce array ordinato in base a func.
Sintassi
array_sort(array, func)
Argomenti
-
array: un'espressione che restituisce un array. -
func: funzione lambda che definisce l'ordinamento.
Valori restituiti
Il tipo di risultato corrisponde al tipo di array.
Se func viene omesso, la matrice viene ordinata in ordine crescente.
Se func viene specificato, accetta due argomenti che rappresentano due elementi della matrice.
La funzione deve restituire -1, 0 o 1 a seconda che il primo elemento sia minore, uguale o maggiore del secondo elemento.
Azure Databricks genera COMPARATOR_RETURNS_NULL se il func restituisce NULL.
Gli elementi NULL vengono posizionati alla fine della matrice restituita.
Condizioni di errore comuni
Esempi
> 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]
-- Comparator must return -1, 0, or 1, not NULL
> SELECT array_sort(array(1, 2), (l, r) -> NULL);
Error: COMPARATOR_RETURNS_NULL