mergeInto

ソース テーブルに基づいて、一連の更新、挿入、および削除をターゲット テーブルにマージします。

構文

mergeInto(table: str, condition: Column)

パラメーター

パラメーター タイプ 説明
table str マージ先のテーブル名。
condition コラム ターゲット テーブル内の行がソース DataFrame の行と一致するかどうかを決定する条件。

返品

MergeIntoWriter: MergeIntoWriter を使用して、ソース DataFrame をターゲット テーブルにマージする方法を指定します。

例示

from pyspark.sql.functions import expr
source = spark.createDataFrame(
    [(14, "Tom"), (23, "Alice"), (16, "Bob")], ["id", "name"])
(source.mergeInto("target", "id")
    .whenMatched().update({ "name": source.name })
    .whenNotMatched().insertAll()
    .whenNotMatchedBySource().delete()
    .merge())