#1、备份当前table1的数据到table1_backup;
create table table1_backup like table1;
CREATE PROCEDURE sp_backup_table1()
BEGIN
DECLARE i INT DEFAULT 0;
DECLARE z INT DEFAULT 0;
SELECT CEIL(COUNT(1)/100000)*100000 INTO z FROM table1;
bak:loop
if i >= z THEN
LEAVE bak;
end if;
if i < z then
INSERT INTO table1_backup SELECT * FROM ctc_blackform LIMIT i, 100000;
end if;
set i=i+100000;
end loop bak;
END;
CALL sp_backup_table1(); #执行存储过程
2、与table2匹配,在table1中不存在的号码数据插入table1表
CREATE PROCEDURE sp_add_table () BEGIN
DECLARE
i INT DEFAULT 0;
DECLARE
z INT DEFAULT 0;
SELECT
CEIL( COUNT( 1 )/ 10000 )* 10000 INTO z
FROM
table2;
adddata :
LOOP
IF
i >= z THEN
LEAVE adddata;
END IF;
IF
i < z THEN
INSERT IGNORE INTO table1 SELECT #重复数据忽略,只插入不重复的
*
FROM
( SELECT * FROM table2 LIMIT i, 10000 );
END IF;
SET i = i + 10000;
END LOOP adddata;
END;
CALL sp_add_table();