wann通过scala将源(hive)数据插入到目标中,其中源列小于目标列

k5ifujac  于 2021-05-29  发布在  Hadoop
关注(0)|答案(0)|浏览(225)

我想将源(配置单元)表数据插入到目标(配置单元)表中,但这里的列在源中较少。如何从源中插入适当的列值其他列值将为“null”
我已经尝试获取源列和目标列,并获取差异(额外的\u列)。
var sqlcontext=new org.apache.spark.sql.hive.hivecontext(sc)

var df1 = sqlContext.sql("SELECT * FROM btr_Dev_landing.test_cfmr") 

var src_col = df1.columns

var df2 = sqlContext.sql("SELECT * FROM btr_dev_landing.tra_detail_Report")

var tgt_col = df2.columns

var diff = src_col.toSet - tgt_col.toSet
var extra_col = diff.toList

我想形成“insert into table target_table(col1,col2,…,coln)values(sourceval1,“null”(不在targettable中),…,sourcevaln);”

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题