快速删除大数据量表

需求:

要清空表中数据,现有一个100w以上的表,开始使用delete from t_name进行删除,发现太慢了,足足等了8分钟,如果数据更大,则无法想象。

可用如下方法进行删除

假设要删除的源表为SOURCE_T

1、生成中间表
create table SOURCE_T_M as select * from SOURCE_T where id = '111' --随便指定一条符合条件的数据
2、修改表名
rename SOURCE_T to SOURCE_T_B;  --将源表改为其他名字
rename SOURCE_T_M to SOURCE_T;  --将中间表改名为源表
3、删除表
drop table SOURCE_T_B; --删除那个被你改为其他名字的表

delete from SOURCE_T; --此时表中只有一条数据,删除即可

作者:itmyhome

©️2020 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页