Hive中有一个外部表。它有数据。当我插入覆盖时,它会更新位于哪个表点的文件。但是在执行select *
时不会更新表数据。
答案 0 :(得分:0)
我尝试了很多,但无法找到这个问题的答案。我使用替代方法完成了我的工作。我在这里分享,如果有人遇到同样的问题,他可以使用它。
1。 create table target_table_name like source_table_name;
2。 insert overwrite table target_table_name partition(partition_column_name)select * from source_table_name;
3.创建外部表another_table_name,如source_table_name,存储为file_format_of_source_table location' location_of_source_table';
4.msck修复表another_table;
5.然后您可以删除source_table并将another_table重命名为source_table_name。