一直知道存储过程,但很少用,直到3000W的mysql表需要清部分数据时(对,就是这么多数据,我也不知道为什么)
create procedure DeleteTest()
BEGIN
DECLARE row int default 5000000;
WHILE(row >)DO
delete from 表名 where sub_type ='rz' limit 10000;
set row = row -10000;
commit;
END WHILE;
END;
call DeleteTest();
limit10000比较合适,太大会锁表,小了又执行频繁,新手勿喷;
我也是服了3000W的mysql,oh my god!!!