Oracle 的 for odr in(查询语句) loop 如何跳过循环、跳出循环, 利用循环产品列表进行不同操作
1)loop循环的跳过
--定义变量 declare searchCount integer; begin --赋值 searchCount:=20; --循环产品列表信息,进行各种操作 for odr in(select * from DXC_GOODS where MID <=searchCount)loop if odr.MID=10 or odr.MID=15 then dbms_output.put_line('跳过循环'); continue; elsif odr.MID=12 then dbms_output.put_line('插入操作,ID:'|| odr.MID || ',Name:'|| odr.NAME); --insetSql else dbms_output.put_line('修改操作,ID:'|| odr.MID || ',Name:'|| odr.NAME); --updateSql end if; end loop; end;
输出结果
2)loop循环的跳出
--定义变量 declare searchCount integer; begin --赋值 searchCount:=20; --循环产品列表信息,进行各种操作 for odr in(select * from DXC_GOODS where MID <=searchCount)loop if odr.MID=12 then dbms_output.put_line('插入操作,ID:'|| odr.MID || ',Name:'|| odr.NAME); --insetSql elsif odr.MID=20 then dbms_output.put_line('跳出循环'); exit; else dbms_output.put_line('修改操作,ID:'|| odr.MID || ',Name:'|| odr.NAME); --updateSql end if; end loop; end;
输出结果
3)loop循环的跳过、跳出
--定义变量 declare searchCount integer; begin --赋值 searchCount:=20; --循环产品列表信息,进行各种操作 for odr in(select * from DXC_GOODS where MID <=searchCount)loop if odr.MID=10 or odr.MID=15 then dbms_output.put_line('跳过循环'); continue; elsif odr.MID=12 then dbms_output.put_line('插入操作,ID:'|| odr.MID || ',Name:'|| odr.NAME); --insetSql elsif odr.MID=20 then dbms_output.put_line('跳出循环'); exit; else dbms_output.put_line('修改操作,ID:'|| odr.MID || ',Name:'|| odr.NAME); --updateSql end if; end loop; end;
输出结果