delect:用于删除特定行条件,你可以从给定表中删除所有的行????
TRUNCATE:truncate用于删除所有的行,这个行为在Hive元存储删除数据是不可逆的
DROP:删除hive中的表
truncate 不能删除外部表!因为外部表里的数据并不是存放在Hive Meta store中
truncate:
truncate table table_name;
例子:
truncate table employees;
删除行
eg:A表数据如下
id(String) name(String)
----------------------------
1 aaa
2 bbb
3 ccc
-----------------------------
要求删除2 bbb
hive脚本如下:
insert overwrite table A select id,name from A where id !=2;

本文介绍了Hive SQL中三种不同的删除操作:DELECT、TRUNCATE和DROP的区别及使用场景。DELECT用于删除特定条件的行;TRUNCATE用于删除表中的所有行,并且在Hive元存储中该操作不可逆;DROP则用于删除整个表。文章还详细解释了TRUNCATE不能用于外部表的原因,并提供了一个使用INSERT OVERWRITE进行行删除的具体实例。
3235





