我在hive中创建了一个名为table1的表,我需要将table2中的数据插入table1。我用下面的statemnt来获取输出。 此外,我需要添加一个具有一些常量值的新列 - colx =' colval'以及table2中的列,但我不知道如何添加它..谢谢!
INSERT INTO TABLE table1 select * FROM table2;
答案 0 :(得分:2)
如果你愿意放弃table1
并从头开始重新创建它,你可以这样做:
-- I'm using Hive 0.13.0
DROP TABLE IF EXISTS table1;
CREATE TABLE table1 AS SELECT *, 'colval' AS colx FROM TABLE2;
如果出于某种原因这不是一个选项,您可以使用INSERT OVERWRITE
:
ALTER TABLE table1 ADD COLUMNS (colx STRING); -- Assuming you haven't created the column already
INSERT OVERWRITE TABLE table1 SELECT *, 'colval' FROM table2;