使用场景:存储过程中,遍历A表,找到符合条件的数据,加工后,插入到B表。
代码:
#基础数据
DECLARE tmp_global_mail_id INT;
DECLARE tmp_title VARCHAR(64);
DECLARE tmp_content VARCHAR(255);
#循环标志
DECLARE loop_flag int default 0;
#声明游标,并按照查询条件储值
DECLARE mail_cursor CURSOR FOR
SELECT id,title,content
FROM t_global_mail_config
WHERE status = 1 AND NOW()>= begin_time AND NOW()<= end_time;
#设置循环跳出条件
DECLARE CONTINUE HANDLER FOR NOT found SET loop_flag=1;
#打开游标
OPEN mail_cursor;
#
FETCH mail_cursor INTO tmp_global_mail_id,tmp_title,tmp_content;
WHILE loop_flag <> 1 DO
-- do some code
#
FETCH mail_cursor INTO tmp_global_mail_id,tmp_title,tmp_content;
END WHILE;
#关闭游标
CLOSE mail_cursor;