Named loop block : Loop « PL SQL Statements « Oracle PL/SQL Tutorial






SQL>
SQL> set serveroutput on size 500000
SQL>
SQL> DECLARE
  2
  3    year_number PLS_INTEGER := 1992;
  4
  5  BEGIN
  6
  7    <<year_loop>>
  8    WHILE year_number <= 1995
  9    LOOP
 10
 11      dbms_output.put_line('year = '||year_number);
 12
 13      <<month_loop>>
 14      FOR month_number IN 1 .. 12
 15      LOOP
 16        dbms_output.put_line('...and month = '||month_number);
 17
 18      END LOOP month_loop;
 19
 20      year_number := year_number + 2;
 21
 22    END LOOP year_loop;
 23
 24  END;
 25  /
year = 1992
...and month = 1
...and month = 2
...and month = 3
...and month = 4
...and month = 5
...and month = 6
...and month = 7
...and month = 8
...and month = 9
...and month = 10
...and month = 11
...and month = 12
year = 1994
...and month = 1
...and month = 2
...and month = 3
...and month = 4
...and month = 5
...and month = 6
...and month = 7
...and month = 8
...and month = 9
...and month = 10
...and month = 11
...and month = 12

PL/SQL procedure successfully completed.

SQL>








22.3.Loop
22.3.1.Loops
22.3.2.Simple Loops
22.3.3.LOOP END LOOP
22.3.4.Count up by hundreds until we get an error
22.3.5.The EXIT WHEN statement can appear anywhere in the loop code.
22.3.6.Exit a LOOP
22.3.7.EXIT a LOOP for a certain condition
22.3.8.Nested loops: Loop inside of a Loop
22.3.9.Exiting from Nested Loops
22.3.10.Using Labels and EXIT Statements with Loops
22.3.11.Creating a REPEAT...UNTIL Loop
22.3.12.Use LOOP to insert data to a table
22.3.13.Fetch Cursor data in LOOP
22.3.14.A SQL Replacement for Regular Loops
22.3.15.Named loop block