我有一个名为
test.dummy
的统一目录表。我查询并修改数据如下
df=spark.sql("select * from `test`.dummy")
df=df.where(col("lastname")=="smith")
现在,我想使用
df
作为我的新桌子。我发现的唯一方法是以下(需要写文件权限):
df.write.mode("overwrite").parquet("abfss://[email protected]/dd")
我可以直接用
df
的内容更新表,而不需要重新创建表并且不使用 abffs 吗?我想使用pyspark,只需替换内容即可。
如果您使用
delta
,您可以通过以下查询来完成:
df.write.option("overwriteSchema", "true").saveAsTable("`xxx`.`test`.`trips_external`",mode="overwrite")
使用
CSV
,则不起作用。 overwriteSchema
仅当架构更改时才需要。