create procedure sum1(a int)
begin
declare sum int default 0; -- default 是指定该变量的默认值
declare i int default 1;
declare uid bigint(18);
DECLARE cs CURSOR FOR (select DISTINCT REL_ID from bc_data_mould_detail where DATA_SORT=0 AND DELETE_STATE=0);
open cs;
while i<=a DO -- 循环开始
fetch cs into uid;
SELECT uid;
set @r:=0;
update bc_data_mould_detail set DATA_SORT=(@r:=@r+1) where REL_ID = uid AND DATA_SORT=0 ;
set sum=sum+i;
set i=i+1;
end while; -- 循环结束
close cs;
select sum; -- 输出结果
end;
-- 执行存储过程
call sum1(539);
-- 删除存储过程
drop procedure if exists sum1;
留言与评论(共有 0 条评论) “” |