MySQL存储过程多条修改语句

DROP procedure Sel_Function_ActivityPastDue
DELIMITER $$
DROP procedure IF EXISTS`shouyi`.`Sel_Function_ActivityPastDue` $$
create procedure `shouyi`.`Sel_Function_ActivityPastDue` ( Endtime varchar(20))

begin
declare v int;
declare vcount int default 0;
declare NewActivity_IDs int; /**活动ID**/
declare CheckCunt int default 0; /**活动ID**/
select count(*) into v from POS_GOODS_Activity where Activity_EndTime<=Endtime;

LOOP_LABLE:loop /**开始循环**/
select Activity_ID into NewActivity_IDs from POS_GOODS_Activity where Activity_EndTime<=Endtime and Activity_Status=0 limit 1;

select count(*) into CheckCunt from POS_GOODS_Activity where Activity_EndTime<=Endtime and Activity_Status=0 limit 1;

if CheckCunt>0 then
update POS_GOODS_Activity set Activity_Status=2 where Activity_ID=NewActivity_IDs limit 100;
select NewActivity_IDs;
update POS_GOODS_NewActivity set NewActivity_Status=2 where NewActivity_ID=NewActivity_IDs limit 100;
select v;
end if;

set v=v-1;
set vcount=vcount+1;
if v<=0 then
leave LOOP_LABLE;/**跳出循环**/ 
end if;
end loop;
select vcount;
end $$
DELIMITER ;

posted @ 2018-09-20 00:50  王子先生  阅读(1527)  评论(0编辑  收藏  举报