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.
Sammlungsfunktion: Sortiert das Eingabearray in aufsteigender Reihenfolge. Die Elemente des Eingabearrays müssen geordnet sein. Null-Elemente werden am Ende des zurückgegebenen Arrays platziert. Unterstützt Spark Connect.
Die entsprechende Databricks SQL-Funktion finden Sie unter array_sort Funktion.
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.array_sort(col=<col>, comparator=<comparator>)
Die Parameter
| Parameter | Typ | Description |
|---|---|---|
col |
pyspark.sql.Column oder str |
Name der Spalte oder des Ausdrucks. |
comparator |
callablewahlfrei |
Eine binäre Funktion, die eine negative ganze Zahl, 0 oder eine positive ganze Zahl zurückgibt, wenn das erste Element kleiner als, gleich oder größer als das zweite Element ist. Wenn die Vergleichsfunktion NULL zurückgibt, schlägt die Funktion fehl und löst einen Fehler aus. |
Rückkehr
pyspark.sql.Column: sortiertes Array.
Examples
Beispiel 1: Sortieren eines Arrays in aufsteigender Standardreihenfolge
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([([2, 1, None, 3],),([1],),([],)], ['data'])
df.select(dbf.array_sort(df.data).alias('r')).collect()
[Row(r=[1, 2, 3, None]), Row(r=[1]), Row(r=[])]
Beispiel 2: Sortieren eines Arrays mit einem benutzerdefinierten Vergleichszeichen
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(["foo", "foobar", None, "bar"],),(["foo"],),([],)], ['data'])
df.select(dbf.array_sort(
"data",
lambda x, y: dbf.when(x.isNull() | y.isNull(), dbf.lit(0)).otherwise(dbf.length(y) - dbf.length(x))
).alias("r")).collect()
[Row(r=['foobar', 'foo', None, 'bar']), Row(r=['foo']), Row(r=[])]