DROP PROCEDURE IF EXISTS mydb.Clear_DB;CREATE PROCEDURE mydb.`Clear_DB`( )BEGIN DECLARE done INT DEFAULT 0; #游标的标志位 DECLARE a varchar(20); DECLARE b varchar(20); DECLARE cur1 CURSOR FOR SELECT table_name FROM information_schema.TABLES WHERE table_name like 'http_200909%' ; DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1; OPEN cur1; REPEAT FETCH cur1 INTO a; IF NOT done THEN set b=concat(b,'select * from ',a,' where name=http://scholar.google.com.hk union all'); # 拼 命令 END IF; UNTIL done END REPEAT; CLOSE cur1; SET @E=mid(b,1,length(b)-9); # 去掉最后一个UNION ALL PREPARE stmt1 FROM @E; EXECUTE stmt1; # 执行命令 DEALLOCATE PREPARE stmt1; #释放对象END;--------------------------------------
|