BEGIN
DECLARE count1 INT;
DECLARE min FLOAT;
DECLARE b INT;
DECLARE max FLOAT;
DECLARE cname VARCHAR(500);
DECLARE kcode VARCHAR(500);
DECLARE qj1 VARCHAR(500);
DECLARE qj2 VARCHAR(500);
DECLARE qj3 VARCHAR(500);
DECLARE qj4 VARCHAR(500);
DECLARE qj5 VARCHAR(500);
DECLARE temp1 FLOAT; /**/
DECLARE deft FLOAT;
DECLARE zz1 INT;
DECLARE zz2 INT;
DECLARE zz3 INT;
DECLARE zz4 INT;
DECLARE zz5 INT;
DECLARE vResult TINYINT;
DECLARE allweek CURSOR FOR select count(t.code) as count1, min(t.weekMin) as minweek, max(t.weeKmax) as maxweek,t.code as code1,t.name as cname from Week t where t.weekMin>0 and t.weekMax>0 group by t.code ;
declare continue handler for not found set b=1;
delete from weekrestbackups where content = null or content = '';
insert into weekrestbackups select * from weekreset;
delete from weekreset where 1=1;
open allweek;
repeat
begin
FETCH allweek INTO count1, min, max, kcode,cname;
/*select count1, min,max,kcode;*/
set temp1 = (max-min)/5;
select count(*) into zz1 from Week t where t.weekMin > min and t.weekMin < (min+temp1) and t.code = kcode;
set qj1 =CONCAT(min,'--',FORMAT((min+temp1),2),'(',zz1,'周)',FORMAT(zz1/count1*100,2),'%');
select count(*) into zz2 from Week t where t.weekMin >= (min+(temp1*1)) and t.weekMin < (min+temp1*2) and t.code = kcode;
set qj2 =CONCAT(FORMAT(min+(temp1*1),2),'--',FORMAT((min+temp1*2),2),'(',zz2,'周)',FORMAT(zz2/count1*100,2),'%');
select count(*) into zz3 from Week t where t.weekMin >= (min+(temp1*2)) and t.weekMin < (min+temp1*3) and t.code = kcode;
set qj3 =CONCAT(FORMAT(min+(temp1*2),2),'--',FORMAT((min+temp1*3),2),'(',zz3,'周)',FORMAT(zz3/count1*100,2),'%');
select count(*) into zz4 from Week t where t.weekMin >= (min+(temp1*3)) and t.weekMin < (min+temp1*4) and t.code = kcode;
set qj4 =CONCAT(FORMAT(min+(temp1*3),2),'--',FORMAT((min+temp1*4),2),'(',zz4,'周)',FORMAT(zz4/count1*100,2),'%');
select count(*) into zz5 from Week t where t.weekMin >= (min+(temp1*4)) and t.weekMin <= (max) and t.code = kcode;
set qj5 =CONCAT(FORMAT(min+(temp1*4),2),'--',max,'(',zz5,'周)',FORMAT(zz5/count1*100,2),'%');
/*select qj1,qj2,qj3,qj4,qj5,kcode,min,max,count1; */
set deft=0.00;
insert into weekreset(table_id,createTime,showTime,code,count,max,min,name,qj1,qj2,qj3,qj4,qj5) values(UUID(),UNIX_TIMESTAMP(),SYSDATE(),kcode,count1,max,min,cname,qj1,qj2,qj3,qj4,qj5);
end;
until b=1
end repeat;
close allweek;
END
DECLARE count1 INT;
DECLARE min FLOAT;
DECLARE b INT;
DECLARE max FLOAT;
DECLARE cname VARCHAR(500);
DECLARE kcode VARCHAR(500);
DECLARE qj1 VARCHAR(500);
DECLARE qj2 VARCHAR(500);
DECLARE qj3 VARCHAR(500);
DECLARE qj4 VARCHAR(500);
DECLARE qj5 VARCHAR(500);
DECLARE temp1 FLOAT; /**/
DECLARE deft FLOAT;
DECLARE zz1 INT;
DECLARE zz2 INT;
DECLARE zz3 INT;
DECLARE zz4 INT;
DECLARE zz5 INT;
DECLARE vResult TINYINT;
DECLARE allweek CURSOR FOR select count(t.code) as count1, min(t.weekMin) as minweek, max(t.weeKmax) as maxweek,t.code as code1,t.name as cname from Week t where t.weekMin>0 and t.weekMax>0 group by t.code ;
declare continue handler for not found set b=1;
delete from weekrestbackups where content = null or content = '';
insert into weekrestbackups select * from weekreset;
delete from weekreset where 1=1;
open allweek;
repeat
begin
FETCH allweek INTO count1, min, max, kcode,cname;
/*select count1, min,max,kcode;*/
set temp1 = (max-min)/5;
select count(*) into zz1 from Week t where t.weekMin > min and t.weekMin < (min+temp1) and t.code = kcode;
set qj1 =CONCAT(min,'--',FORMAT((min+temp1),2),'(',zz1,'周)',FORMAT(zz1/count1*100,2),'%');
select count(*) into zz2 from Week t where t.weekMin >= (min+(temp1*1)) and t.weekMin < (min+temp1*2) and t.code = kcode;
set qj2 =CONCAT(FORMAT(min+(temp1*1),2),'--',FORMAT((min+temp1*2),2),'(',zz2,'周)',FORMAT(zz2/count1*100,2),'%');
select count(*) into zz3 from Week t where t.weekMin >= (min+(temp1*2)) and t.weekMin < (min+temp1*3) and t.code = kcode;
set qj3 =CONCAT(FORMAT(min+(temp1*2),2),'--',FORMAT((min+temp1*3),2),'(',zz3,'周)',FORMAT(zz3/count1*100,2),'%');
select count(*) into zz4 from Week t where t.weekMin >= (min+(temp1*3)) and t.weekMin < (min+temp1*4) and t.code = kcode;
set qj4 =CONCAT(FORMAT(min+(temp1*3),2),'--',FORMAT((min+temp1*4),2),'(',zz4,'周)',FORMAT(zz4/count1*100,2),'%');
select count(*) into zz5 from Week t where t.weekMin >= (min+(temp1*4)) and t.weekMin <= (max) and t.code = kcode;
set qj5 =CONCAT(FORMAT(min+(temp1*4),2),'--',max,'(',zz5,'周)',FORMAT(zz5/count1*100,2),'%');
/*select qj1,qj2,qj3,qj4,qj5,kcode,min,max,count1; */
set deft=0.00;
insert into weekreset(table_id,createTime,showTime,code,count,max,min,name,qj1,qj2,qj3,qj4,qj5) values(UUID(),UNIX_TIMESTAMP(),SYSDATE(),kcode,count1,max,min,cname,qj1,qj2,qj3,qj4,qj5);
end;
until b=1
end repeat;
close allweek;
END