Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Eksploduje tablicę struktur w tabeli. W przeciwieństwie do wbudowanej, jeśli tablica ma wartość null lub jest pusta, wartość null jest generowana dla każdej zagnieżdżonej kolumny.
Składnia
from pyspark.sql import functions as sf
sf.inline_outer(col)
Parametry
| Parameter | Typ | Description |
|---|---|---|
col |
pyspark.sql.Column lub nazwa kolumny |
Kolumna wejściowa wartości do eksplodowania. |
Zwraca
pyspark.sql.Column: wyrażenie generatora z eksplodowanym wynikiem wbudowanym.
Przykłady
from pyspark.sql import functions as sf
df = spark.sql('SELECT * FROM VALUES (1,ARRAY(NAMED_STRUCT("a",1,"b",2), NULL, NAMED_STRUCT("a",3,"b",4))), (2,ARRAY()), (3,NULL) AS t(i,s)')
df.printSchema()
root
|-- i: integer (nullable = false)
|-- s: array (nullable = true)
| |-- element: struct (containsNull = true)
| | |-- a: integer (nullable = false)
| | |-- b: integer (nullable = false)
df.select('*', sf.inline_outer('s')).show(truncate=False)
+---+----------------------+----+----+
|i |s |a |b |
+---+----------------------+----+----+
|1 |[{1, 2}, NULL, {3, 4}]|1 |2 |
|1 |[{1, 2}, NULL, {3, 4}]|NULL|NULL|
|1 |[{1, 2}, NULL, {3, 4}]|3 |4 |
|2 |[] |NULL|NULL|
|3 |NULL |NULL|NULL|
+---+----------------------+----+----+