存储过程 ------ 通过一个字段条件更新另外一个字段
同一表的操作,我当时是用来通过推荐人账号,更新推荐人id字段
BEGIN
DECLARE t_uid INT(11) DEFAULT 0;
DECLARE t_username VARCHAR(255) DEFAULT 0;
DECLARE t_tjuser VARCHAR(255) DEFAULT 0;
DECLARE t_newid INT(5) DEFAULT 0;
DECLARE t_issm INT(5) DEFAULT 0;
DECLARE t_nowtime VARCHAR(20) DEFAULT unix_timestamp(now());
DECLARE t_zskusers FLOAT(10,2) DEFAULT 0;
DECLARE t_zzkusers FLOAT(10,2) DEFAULT 0;
DECLARE t_yprice_two FLOAT(10,3) DEFAULT 0;
DECLARE t_dtprice FLOAT(10,3) DEFAULT 0;
DECLARE t_etprice FLOAT(10,3) DEFAULT 0;
DECLARE t_walleight FLOAT(10,3) DEFAULT 0;
DECLARE t_fhjs FLOAT(10,3) DEFAULT 0;
DECLARE _done INT DEFAULT 0;
DECLARE rs CURSOR FOR SELECT id,username,tjuser FROM fa_user WHERE id>0 and tjuser>0 ;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET _done =1;
-- 打开游标
OPEN rs;
-- 重复
REPEAT
-- 循环遍历游标
FETCH rs INTO t_uid,t_username,t_tjuser;
IF NOT _done THEN
SELECT id into t_newid from fa_user where username=t_tjuser;
UPDATE `fa_user` SET tjid=t_newid WHERE `id` = t_uid;
SET _done=0;
END IF;
UNTIL _done END REPEAT;
close rs;
END