将pyspark数据框写入具有相同列数和一个附加autoIncrement列的雪花表中

时间:2019-10-10 17:54:56

标签: dataframe pyspark snowflake-data-warehouse

我有一个具有5列的pyspark数据帧,我需要将其写入具有6列的Snowflake表中,其中5列与dataframe列相同,但是雪花表中还有1个额外的自动增量列。

当我尝试将此数据帧写入雪花表时,却出现错误;列不匹配,因为数据帧和雪花表中的列数不同。我已经尝试过mode ='append',但这不起作用。

df.write.format(snowflake_source_name) \
            .options(**sfoptions) \
            .option("dbtable", table_name) \
            .mode("append").save()
  

我希望将dataframe中的这5列插入   雪花表和第6个自动增量雪花列应为   插入的每一行都会自动增加。

1 个答案:

答案 0 :(得分:0)

“自动递增”列将像Sequence一样自动递增。无需输入数据框,否则会出现列不匹配的情况。在SnowFlake中定义表时,必须已在Snowflake DB中指定了Sequence,这会引起注意。其余所有代码看起来都很好。