在一些存儲過程場景中,可能存在需要在滿足某些條件時跳出循環的場景,
但是在PL/SQL
中,不能使用break
語句直接跳出循環,
但是可以通過lable
標簽的方式跳出循環,例:
<<outer_loop>>
FOR i IN 1..5 LOOPDBMS_OUTPUT.PUT_LINE('外層循環:' || i);<<inner_loop>>FOR j IN 1..5 LOOPDBMS_OUTPUT.PUT_LINE('內層循環: ' || j);-- Use a condition to break out of the outer loopIF i = 2 AND j = 3 THENEXIT outer_loop;END IF;END LOOP inner_loop;
END LOOP outer_loop;
在這個例子中,
我們有一個標記為outer_loop
的外部循環和一個標記為inner_loop
的內部循環
在內部循環中,有一個i = 2 AND j = 3
條件, 如果此條件滿足,則使用EXIT
語句跳出外部循環
標簽使用<<label_name>>
語法定義,
可以在任何循環語句(FOR
循環、WHILE
循環或LOOP
語句)之前放置標簽來標記它,
然后,標簽可以與EXIT
或CONTINUE
等控制流語句搭配使用,以指定退出或繼續哪個循環。
最后看執行結果:
外層循環:1
內層循環:1
內層循環:2
內層循環:3
內層循環:4
內層循環:5
外層循環:2
內層循環:1
內層循環:2
內層循環:3