火花塞覆盖测试
Posted
技术标签:
【中文标题】火花塞覆盖测试【英文标题】:spark insert overwrite test 【发布时间】:2020-01-30 16:11:44 【问题描述】:我是 pyspark 新手,想玩 Insert Overwrite。
我创建了一个包含许多记录的 test_overwrite 表。 然后我从 test_overwrite 创建了一个空的 test_overwrite_3 表并将一些数据放入其中。 (我确定结构是一样的。)
insert overwrite test_overwrite_3 select * from test_overwrite limit 3
我希望在执行我的 test_overwrite_3 表上方的代码后,会删除一些虚拟数据,并且它应该从我的 test_overwrite 表中有 3 条记录。
相反,我收到如下错误消息:
*SQL 语句中的错误:ParseException: 在输入“插入覆盖 test_overwrite_3”时没有可行的替代方案(第 1 行,第 17 行) == SQL == 插入覆盖 test_overwrite_3 -----------------^^^ select * from test_overwrite*
任何人都可以帮助解决问题吗? 谢谢!
【问题讨论】:
【参考方案1】:no viable alternative at input 'insert overwrite test_overwrite_3
解析错误,而不是类型错误。 see this
我可以看到您的语句中缺少 table 关键字。
例子是:
sql(
"""
|INSERT OVERWRITE TABLE table_with_partition
|partition (p1='a',p2='b',p3='c',p4='c',p5='4')
|SELECT 'blarr' FROM tmp_table
""".stripMargin)
【讨论】:
would you care to accept the answer as owner.以上是关于火花塞覆盖测试的主要内容,如果未能解决你的问题,请参考以下文章