mysql 存储过程--指针

BEGIN
DECLARE Done int DEFAULT 0;
DECLARE cjobid int;
DECLARE crow int;
DECLARE crows int;
DECLARE cendtime datetime;
DECLARE cstarttime datetime;
DECLARE cr CURSOR FOR SELECT jobid,starttime,endtime from v_om_ab_timebar;

DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET Done = 1;

open cr;
FETCH NEXT FROM cr INTO cjobid,cstarttime,cendtime;
REPEAT
    SELECT count(*) INTO crow FROM `om_ab_timebar` where jobid=cjobid and endtime=cstarttime;
    SELECT count(*) INTO crows FROM `om_ab_timebar` where jobid=cjobid and endtime=cendtime;
    IF crow+crows=0 THEN
    insert into `om_ab_timebar`(starttime,endtime,jobid) values(cstarttime,cendtime,cjobid);
    ELSE
    update `om_ab_timebar` set endtime=cendtime where jobid=cjobid and endtime=cstarttime;
    END IF;
FETCH NEXT FROM cr INTO cjobid,cstarttime,cendtime;
UNTIL Done END REPEAT;
CLOSE cr;
INSERT into om_ab_fg_output(fg,endtime,route,jobid,type,statue) SELECT * from v_om_ab_fg_threeminute_ok;
END

 

posted on 2016-12-21 16:17  hsin、  阅读(1408)  评论(0)    收藏  举报

导航