Hive的INSERT OVERWRITE语句中的列顺序重要吗?

Dhi*_*raj 5 hive

可以说我正在对分区使用INSERT OVERWRITE TABLE命令:

INSERT OVERWRITE TABLE target PARTITION (date_id = ${hiveconf:DateId})
SELECT a as columnA,
       b as columnB,
       c as columnC from sourcetable;
Run Code Online (Sandbox Code Playgroud)

并且可以说目标表中列的顺序与插入覆盖/选择中指定的顺序不同。有关系吗?因为我在理想情况下使用AS子句明确指定列名,所以这无关紧要。但是我得到一些正在目标端交换的数据。我强烈怀疑列顺序可能很重要。所以只想确认一下。

Dav*_*itz 7

列的顺序是唯一重要的事情。
源和目标之间应完全匹配。

ps
我不知道有任何SQL提供程序支持按列名在目标和源之间进行匹配。
ISO SQL支持目标表的列列表,例如:

insert into trg (col4, col1, col2)
select ... , ... , ... from ...
Run Code Online (Sandbox Code Playgroud)

Hive当前不支持此功能。