
比如说几个表关联查处了这一行数据,当假期(分钟)>480,我就需要把他从拆分成几行数据,然后把他的假期(分钟)更新到另外一张表,请问应该怎么做呢,拆分出来的几行数据我应该用什么暂时存起来然后拿去更新吗

关注存储过程里,对于临时使用的值,不需要存到表里,要么存变量里,要么使用游标。
如果你前面这个查询是个游标,后面自然而然就是接个循环,循环里就可以直接用游标的值进行判断,并且可以根据判断结果去进行相应处理
begin
for rec in (select * from 表a) loop
if rec.请假 > 480 then
loop
insert into 表b values (rec.日期, case when rec.请假>480 then 480 else rec.请假 end );
rec.请假 := rec.请假 - 480;
rec.日期:=rec.日期+1;
if rec.请假 < 0 then
exit;
end if;
end loop;
end if;
end loop;
end;
上面这个sql没有处理你的工作日,主要是因为每个公司的工作日都会有区别,而且法定节假日也是一个外部数据,这个只能你自己去匹配日期了