inline_outer

Bir yapı dizisini bir tabloya ayrıştırır. Satır içinden farklı olarak, dizi null veya boşsa, iç içe yerleştirilmiş her sütun için null oluşturulur.

Sözdizimi

from pyspark.sql import functions as sf

sf.inline_outer(col)

Parametreler

Parametre Türü Description
col pyspark.sql.Column veya sütun adı Patlayacak değerlerin sütununu girin.

İade

pyspark.sql.Column: satır içi patlayan sonucu içeren oluşturucu ifadesi.

Örnekler

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|
+---+----------------------+----+----+