我已经有一个配置单元表,它是在测试之前创建的,例如它有a(字符串类型)、b(字符串)、c(数字)列。
在测试用例中,我只想插入测试数据,稍后将查询这些数据,例如在a、b列中。
将只有a列和b列数据的测试数据插入到包含diff模式的现有表中的最佳方法是什么?
我通常会得到一些类似模式不匹配的错误,列计数不匹配等错误,当我尝试做类似的事情
val df = session.createDataFrame(rows, schema)
df.write.mode(SaveMode.Append).format("orc").saveAsTable(mytableName)
哪里 schema
是现有的表架构 session.table(mytableName).schema
以及 rows
是具有列a和b的值的元组列表。
有没有合适的api来实现这一点?
如何在配置单元表中只插入一些字段,重用现有的表模式?
1条答案
按热度按时间nbysray51#
向要写入表的Dataframe追加一个新列。前-
假设您有两行数据-由两个元组表示: