oracle 跳出一个循环的问题

发布网友 发布时间:2022-04-21 09:16

我来回答

7个回答

热心网友 时间:2022-04-09 04:02

exit跳出循环。SQLSERVER用BREAK
if 跳出循环的条件 then
exit;
end if;
或者
exit when 条件(一定是一个返回true或者false的判断条件)

热心网友 时间:2022-04-09 05:20

Oracle不支持 Break与Continue
Break 使用 EXIT 替换
Continue使用GOTO替换

SQL> DECLARE
2 testvalue INT;
3 BEGIN
4 testvalue := 0;
5 WHILE testvalue < 5 LOOP
6 <<l_Begin_Loop>>
7 testvalue := testvalue + 1;
8 IF testvalue = 2 THEN
9 GOTO l_Begin_Loop;
10 END IF;
11 IF testvalue = 4 THEN
12 EXIT;
13 END IF;
14 dbms_output.put_line( TO_CHAR(testvalue) );
15 END LOOP;
16 END;
17 /
1
3
PL/SQL procere successfully completed.

热心网友 时间:2022-04-09 06:55

个人觉得既然指定了for 循环的条件,就不应该存在跳出循环的判断条件,因为编程的一个宗旨是“one way in,one way out”,即“一个入口,一个出口”,你现在又两个出口(一个跳出循环的条件,一个是for指定的条件),是否不太合适呢,说明你在指定for的条件时并不合适。

热心网友 时间:2022-04-09 08:46

用FOR循环的话没有跳出这个功能
你可以用EXCEPTION处理来跳出,或者GOTO也行,或者把FOR循环改成LOOP循环

热心网友 时间:2022-04-09 10:54

for t1 in ..... loop
for t2 in .... loop
//满足一定条件时跳出t2这个循环,进行t1的下一个循环,应该怎么写
exit when true;
end loop;
end loop;

热心网友 时间:2022-04-09 13:19

break;?

热心网友 时间:2022-04-09 16:00

continue
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
Top