Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Sammlungsfunktion: Gibt ein Arrayelement an einem bestimmten (1-basierten) Index oder Wert für den angegebenen Schlüssel in einer Karte zurück. Bei Arrays löst Spark bei 0 einen Fehler aus. Wenn Index < 0 ist, greift auf Elemente vom letzten zum ersten zu. Die Funktion gibt immer NULL zurück, wenn der Index die Länge des Arrays überschreitet. Bei Karten gibt die Funktion immer NULL zurück, wenn der Schlüssel nicht in der Karte enthalten ist.
Die entsprechende Databricks SQL-Funktion finden Sie unter try_element_at Funktion.
Syntax
from pyspark.databricks.sql import functions as dbf
dbf.try_element_at(col=<col>, extraction=<extraction>)
Die Parameter
| Parameter | Typ | Description |
|---|---|---|
col |
pyspark.sql.Column oder str |
Name der Spalte, die Array oder Zuordnung enthält. |
extraction |
pyspark.sql.Column oder str |
Index, der in Array oder Schlüssel überprüft werden soll, um nach in der Karte zu suchen. |
Examples
Beispiel 1: Abrufen des ersten Elements eines Arrays
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(dbf.try_element_at(df.data, dbf.lit(1))).show()
+-----------------------+
|try_element_at(data, 1)|
+-----------------------+
| a|
+-----------------------+
Beispiel 2: Abrufen des letzten Elements eines Arrays mit negativem Index
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(dbf.try_element_at(df.data, dbf.lit(-1))).show()
+------------------------+
|try_element_at(data, -1)|
+------------------------+
| c|
+------------------------+