SaveAsTable

Сохраняет содержимое указанной DataFrame таблицы. Если таблица уже существует, поведение зависит от mode параметра (по умолчанию создается исключение). Если mode это 'overwrite'так, схема не DataFrame должна соответствовать существующей схеме таблицы.

Синтаксис

saveAsTable(name, format=None, mode=None, partitionBy=None, **options)

Параметры

Параметр Тип Описание
name str Имя таблицы.
format str, необязательный Формат, используемый для сохранения.
mode str, необязательный Поведение, когда данные уже существуют. Допустимые значения: 'append', 'overwrite''error' или 'errorifexists' (по умолчанию) и 'ignore'.
partitionBy str или list, необязательный Имена столбцов секционирования.
**options Дикт Дополнительные параметры строки.

Возвраты

Нет

Примечания

modeЕсли 'append' таблица уже существует, используется его формат и параметры. В отличие от DataFrameWriter.insertIntoимен столбцов, DataFrameWriter.saveAsTable используется для поиска правильных позиций столбцов.

Примеры

Создайте таблицу из кадра данных и считывайте ее обратно.

spark.sql("DROP TABLE IF EXISTS tblA")
spark.createDataFrame([
    (100, "Alice"), (120, "Bob"), (140, "Tom")],
    schema=["age", "name"]
).write.saveAsTable("tblA")

spark.read.table("tblA").sort("age").show()
# +---+------------+
# |age|        name|
# +---+------------+
# |100|Alice|
# |120|Bob|
# |140| Tom|
# +---+------------+

spark.sql("DROP TABLE tblA")