BEGINDECLARE i INT;set i=1;while i<2666 DOIF (YEAR(date(now())-1)=2020 and MONTH(date(now())-1)=02)THEN INSERT INTO hisdata(analogid,datadate,vmax,minvalue,avgvalue) select analogid,date(now())-1,max(calvalue) ,min(calvalue) ,avg(calvalue) from hisanalog_2020_02 where date(savetime)=date(now())-1 and ANALOGID=i;ELSEIF (YEAR(date(now())-1)=2020 and MONTH(date(now())-1)=03)THEN INSERT INTO hisdata(analogid,datadate,vmax,minvalue,avgvalue) select analogid,date(now())-1,max(calvalue) ,min(calvalue) ,avg(calvalue) from hisanalog_2020_03 where date(savetime)=date(now())-1 and ANALOGID=i;ELSEIF (YEAR(date(now())-1)=2020 and MONTH(date(now())-1)=04)THEN INSERT INTO hisdata(analogid,datadate,vmax,minvalue,avgvalue) select analogid,date(now())-1,max(calvalue) ,min(calvalue) ,avg(calvalue) from hisanalog_2020_04 where date(savetime)=date(now())-1 and ANALOGID=i;end IF;set i=i+1;end WHILE;end以上为一个存储过程的代码,结果输出是analogid为0,不是1开始的,导致无法筛选到可用数据!麻烦大神帮我看看有什么问题!analogid从1到2665,每天每个id有48行数据,通过此过程将每日数据进行简化汇总!