在Oracle中,可以使用循环语句来重复执行一段代码。常用的循环语句有以下两种:FOR循环和WHILE循环。
FOR循环用于已知循环次数的情况下,可以使用以下语法:
FOR loop_counter IN lower_bound..upper_bound LOOP
-- 循环体代码
END LOOP;
在循环体中,可以使用loop_counter来表示当前循环的次数,lower_bound和upper_bound分别表示循环的下界和上界。
例如,以下代码将输出1到5的数字:
BEGIN
FOR i IN 1..5 LOOP
DBMS_OUTPUT.PUT_LINE(i);
END LOOP;
END;
WHILE循环用于未知循环次数的情况下,可以使用以下语法:
WHILE condition LOOP
-- 循环体代码
END LOOP;
在循环体中,需要提供一个条件(condition),只有当条件为真时,循环体才会执行。
例如,以下代码将输出1到10的奇数:
DECLARE
i NUMBER := 1;
BEGIN
WHILE i <= 10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
i := i + 2;
END LOOP;
END;
注意:在循环体中,可以使用BREAK语句来提前结束循环,使用CONTINUE语句来跳过当前循环的剩余代码。