插入 table 的特定列

Insert into specific columns of table

根据https://issues.apache.org/jira/browse/HIVE-9481,支持插入到 Hive 的特定列。 link 的语法是: 插入目标(colA, colB) select colX,colY from source;

但是,当我尝试在 Hive 中执行相同的操作时,出现错误:

语义异常:在 default.target 的常规列或动态分区中找不到插入架构规范中的 [colA, colB]。

如何通过指定列列表在 Hive 中插入值? 请帮忙

Hive 支持指定列列表的插入。 我犯的错误是我在脚本的 create table 语句中引用了列名。 已通过将此列表替换为我的 table 中使用的列的小写名称来纠正此问题。 另外,我添加了关键字 table,尽管它是可选的。 语法:

INSERT INTO TABLE target(cola,colb,colc) select colx,coly,colz from source;

我相信您还需要在目标 table 名称之后放置单词分区。

示例:INSERT INTO TABLE target PARTITION(cola,colb,colc) select colx,coly,colz from 来源;

否则我们会注意到与原始记录相同的错误 post