mergeInto

Объединяет набор обновлений, вставок и удалений на основе исходной таблицы в целевую таблицу.

Синтаксис

mergeInto(table: str, condition: Column)

Параметры

Параметр Тип Описание
table str Имя целевой таблицы для слияния.
condition колонна Условие, определяющее, соответствует ли строка в целевой таблице одному в исходном кадре данных.

Возвраты

MergeIntoWriter: MergeIntoWriter для дальнейшего использования, чтобы указать, как объединить исходный кадр данных в целевую таблицу.

Примеры

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())