sql—insert是否按名称或顺序位置覆盖配置单元insert中的内容?

mec1mxoz  于 2021-05-29  发布在  Spark
关注(0)|答案(1)|浏览(579)

我想知道在apachespark中如何在hive中插入覆盖。我们仅覆盖特定分区,并使用以下查询:

INSERT OVERWRITE TABLE tableName1 PARTITION (col1=val1) SELECT * FROM tableName2

这将覆盖一个特定的分区并保留其他分区。这是按顺序写的还是按名字写的?我似乎找不到任何文件来回答这个问题。
任何帮助都将不胜感激。

ubby3x7f

ubby3x7f1#

在这种情况下,spark上的hive的工作方式与spark外的hive相同。
《编程配置单元》一书中的第5章-hiveql:数据操作-将数据插入表部分清楚地说明了以下内容:
配置单元确定分区键的值,从上一个 <n> select子句中的列。。。源列值和输出分区值之间的关系仅按位置而不是按名称匹配。
希望这有帮助。

相关问题