我有一个特定结构的hive空表。
我有10个具有相同结构,数据类型和架构但表名不同的其他表。
我使用"将一个表的数据加载到空表中;插入"并说我有10密耳的记录。
现在我使用"插入"将第二个表加载到此表中。
当我进行计数(*)时,它没有向我显示整个记录数。
它仅显示上次加载的表的记录计数。
为什么?我希望加载所有记录。
任何帮助都会很棒!
答案 0 :(得分:0)
这样做,
insert into table table_name
Select * from
(
SELECT b.var1 FROM tmp_table1 b
UNION ALL
SELECT c.var1 FROM tmp_table2 c
UNION ALL
SELECT d.var1 FROM tmp_table3 d
UNION ALL
SELECT e.var1 FROM tmp_table4 e
UNION ALL
SELECT f.var1 FROM tmp_table5 f
UNION ALL
SELECT g.var1 FROM tmp_table6 g
UNION ALL
SELECT h.var1 FROM tmp_table7 h
) CombinedTable
答案 1 :(得分:0)
您对所有表都有相同的架构,因此最好将文件复制到新的空表。如果你没有在hive表中有任何分区,这是一个更好的解决方案。