Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:
Databricks SQL
Databricks Runtime
Gibt array sortiert nach func zurück.
Syntax
array_sort(array, func)
Argumente
-
array: Ein Ausdruck ein, der in ein Array ausgewertet wird. -
func: Eine Lambdafunktion, die die Sortierreihenfolge definiert.
Gibt zurück
Der Ergebnistyp stimmt mit dem Typ von array überein.
Wenn func weggelassen wird, wird das Array in aufsteigender Reihenfolge sortiert.
Wenn func angegeben wird, werden zwei Argumente verwendet, die zwei Elemente des Arrays darstellen.
Die Funktion muss -1, 0 oder 1 zurückgeben, je nachdem, ob das erste Element kleiner als, gleich oder größer als das zweite Element ist.
Azure Databricks löst COMPARATOR_RETURNS_NULL aus, wenn die func NULL zurückgibt.
NULL-Elemente werden am Ende des zurückgegebenen Arrays angeordnet.
Häufige Fehlerbedingungen
Beispiele
> 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