清除Hive表数据
hive删除表:
drop table table_name;
hive删除表中数据:
truncate table table_name;
hive按分区删除数据:
alter table table_name drop partition (partition_name='分区名')
全表:
1、删除内部表中数据(保留表结构)
truncate table 表名;
2、删除外部表中数据(保留表结构)
hdfs -dfs -rm -r 外部表路径
drop table 表名;
表指定数据:
1.分区表
删除具体partition
alter table table_name drop partition(partiton_name='xxx');
删除具体partition的部分数据
INSERT OVERWRITE TABLE table_name PARTITION(year='2018')
SELECT * FROM table_name WHERE year='2018' AND month>6;
#注意:WHERE后的条件是需要保留的数据的查询结果
2.非分区表
INSERT OVERWRITE TABLE table_name SELECT * FROM table_name WHERE year>2018;
#注意:WHERE后的条件是需要保留的数据的查询结果,即删除2018年及以前的数据