清除表指定的内容
分区非分区表都适用
一、truncate (仅删除表中数据,保留表结构)
truncate table table_name;
#truncate操作用于删除指定表中的所有行
二、分区表
1.删除具体partition
alter table table_name drop partition(partition_name='')
2.删除具体partition的部分数据
INSERT OVERWRITE TABLE table_name PARITION( etl_cycle_id='20230106') SELECT * FROM table_name WHERE etl_cycle_id<'20230106';
#WHERE后的条件是需要保留的数据的查询结果,即删除20230106之后的数据
三、非分区表
INSERT OVERWRITE TABLE table_name SELECT * FROM table_name WHERE etl_cycle_id<'20230106';
#WHERE后的条件是需要保留的数据的查询结果,即删除20230106之后的数据