Oracle常见几种循环

Oracle常见几个循环

转载自:http://www.jo99.com/post/Oraclee587a0e4b8aae5beaae78eaf.aspx

1、loop

declare
    x number:= 0;
begin
    x:=0;
   
    loop
        x:=x+1;
        /*if x>=10 then
        exit;
        end if;*/
        exit when x>10; -- 此句与上面的if语句作用相同,但这样简练。
        DBMS_OUTPUT.PUT_LINE('内 :x='||x);
    end loop;
   
    DBMS_OUTPUT.PUT_LINE('外:x='||x);
end;
 

2、while

declare
    x number;
begin
    x:=0;
   
    while x<=10 loop
        x:=x+1;
        DBMS_OUTPUT.PUT_LINE('内:x='||x);
    end loop;
   
    DBMS_OUTPUT.PUT_LINE('外:x='||x);
end;


3、for

begin
    for x in reverse 1..10 loop -- reverse大到小
        DBMS_OUTPUT.PUT_LINE('内:x='||x);
    end loop;
   
    DBMS_OUTPUT.PUT_LINE('endget');
end;

4、goto

declare
    x number;
begin
    x:=0;
   
    <<repeat_loop>>
    begin
        x:=x+1;
        DBMS_OUTPUT.PUT_LINE('内:x='||x);
    end;
   
    if x<=10 then
       goto repeat_loop;
    end if;
   
    DBMS_OUTPUT.PUT_LINE('外:x='||x);
end;

原文地址:https://www.cnblogs.com/Golf9527/p/1977881.html