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では列名を使用して正しい列の位置を検索します。

例示

DataFrame からテーブルを作成し、読み戻します。

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