插入

DataFrame 的內容插入指定的表格中。 要求 的 DataFrame 結構與資料表的結構相同。

語法

insertInto(tableName, overwrite=None)

參數

參數 類型 說明
tableName str 目標資料表的名稱。
overwrite Bool,選用 如果 True,則會覆寫現有資料。 預設為停用。

退貨

沒有

Notes

DataFrameWriter.saveAsTable不同, DataFrameWriter.insertInto 忽略欄位名稱,採用基於位置的解析度。

Examples

以位置為基礎的解析度將資料插入資料表,忽略欄位名稱。

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

df.selectExpr("age AS col1", "name AS col2").write.insertInto("tblA")
spark.read.table("tblA").sort("age").show()
# +---+------------+
# |age|        name|
# +---+------------+
# |100|Alice|
# |100|Alice|
# |120|Alice|
# |120|Alice|
# |140| Bob|
# |140| Bob|
# +---+------------+

spark.sql("DROP TABLE tblA")