如何从外部分区表中删除Hive中的重复记录?

时间:2018-04-13 08:22:45

标签: sql hive

我有一个分区的hive表,它被创建为外部表。我在hive中有一些重复的记录。那么如何删除呢?

分区键:date_created

Col1  Date_created  
----  ------------

A     Jan

B     Jan

A     Jan

我需要输出为

Col1  Date_created  
----  ------------

A     Jan

B     Jan

2 个答案:

答案 0 :(得分:1)

使用insert overwrite + distinct:

set hive.exec.dynamic.partition.mode=nonstrict;

insert overwrite table table_name partition (date_created) 
select distinct * from table_name ;

答案 1 :(得分:0)

选择不同的行并像这样覆盖当前表

insert overwrite table tbl select distinct * from tbl;