PL/SQL允许在另一个循环中使用一个循环,以下部分显示了一些示例来说明这一概念。
PL/SQL中嵌套的基本LOOP语句的语法如下-
LOOP Sequence of statements1 LOOP Sequence of statements2 END LOOP; END LOOP;
PL/SQL中嵌套的FOR LOOP语句的语法如下-
FOR counter1 IN initial_value1 .. final_value1 LOOP sequence_of_statements1 FOR counter2 IN initial_value2 .. final_value2 LOOP sequence_of_statements2 END LOOP; END LOOP;
Pascal中嵌套WHILE LOOP语句的语法如下-
WHILE condition1 LOOP sequence_of_statements1 WHILE condition2 LOOP sequence_of_statements2 END LOOP; END LOOP;
嵌套 loops - 示例
以下程序使用嵌套的基本循环来查找2到100之间的质数-
DECLARE i number(3); j number(3); BEGIN i := 2; LOOP j:= 2; LOOP exit WHEN ((mod(i, j)=0) or (j=i)); j := j +1; END LOOP; IF (j=i ) THEN dbms_output.put_line(i || ' is prime'); END IF; i := i + 1; exit WHEN i=50; END LOOP; END; /
当以上代码在SQL提示符下执行时,将产生以下输出-
2 is prime 3 is prime 5 is prime 7 is prime 11 is prime 13 is prime 17 is prime 19 is prime 23 is prime 29 is prime 31 is prime 37 is prime 41 is prime 43 is prime 47 is prime PL/SQL procedure successfully completed.
参考链接
https://www.learnfk.com/plsql/plsql-nested-loops.html
标签:prime,END,无涯,嵌套,嵌套循环,PL,SQL,LOOP From: https://blog.51cto.com/u_14033984/8945807