Bagikan melalui


TableValuedFunction.inline

Meledakkan array struktur ke dalam tabel.

Fungsi ini mengambil kolom input yang berisi array structs dan mengembalikan kolom baru di mana setiap struct dalam array meledak ke dalam baris terpisah.

Syntax

spark.tvf.inline(input)

Parameter-parameternya

Pengaturan Tipe Description
input pyspark.sql.Column Kolom input nilai yang akan meledak.

Pengembalian Barang

pyspark.sql.DataFrame: DataFrame dengan baris struct yang meledak.

Examples

Contoh 1: Menggunakan sebaris dengan satu array struct

import pyspark.sql.functions as sf
spark.tvf.inline(sf.array(
    sf.named_struct(sf.lit("a"), sf.lit(1), sf.lit("b"), sf.lit(2)),
    sf.named_struct(sf.lit("a"), sf.lit(3), sf.lit("b"), sf.lit(4))
)).show()
+---+---+
|  a|  b|
+---+---+
|  1|  2|
|  3|  4|
+---+---+

Contoh 2: Menggunakan sebaris dengan kolom array struct kosong

import pyspark.sql.functions as sf
spark.tvf.inline(sf.array().astype("array<struct<a:int,b:int>>")).show()
+---+---+
|  a|  b|
+---+---+
+---+---+

Contoh 3: Menggunakan sebaris dengan kolom array struct yang berisi nilai null

import pyspark.sql.functions as sf
spark.tvf.inline(sf.array(
    sf.named_struct(sf.lit("a"), sf.lit(1), sf.lit("b"), sf.lit(2)),
    sf.lit(None),
    sf.named_struct(sf.lit("a"), sf.lit(3), sf.lit("b"), sf.lit(4))
)).show()
+----+----+
|   a|   b|
+----+----+
|   1|   2|
|NULL|NULL|
|   3|   4|
+----+----+