外部表
insert overwrite table test_table select * from test_table where 1=0;
insert overwrite table是覆盖数据,后面select是指使用哪里的数据进行覆盖,
如果条件为空 where 1=0,那就代表清除数据。
内部表
仅仅删除表数据,保留表结构。
方法一
truncate用于删除所有的行且不能删除外部表,因为外部表里的数据并不是存放在Hive Meta store中,语句如下:
truncate table table_name;
方法二
delete用于删除特定条件下的行,使用where 1=1 删除所有行 SQL中where 1 = 1 的使用
delete from table_name where 1 = 1 ;
版权归原作者 专注于大数据技术栈 所有, 如有侵权,请联系我们删除。