oracle 循环
时间: 2023-06-30 10:04:04 浏览: 38
在 Oracle 数据库中,有多种循环结构可供使用,包括 FOR 循环、WHILE 循环和 LOOP 循环。下面是这些循环结构的基本语法和用法:
1. FOR 循环
FOR 循环用于迭代一个固定次数的代码块。它的语法如下:
```
FOR counter IN lower_bound..upper_bound LOOP
-- 待执行的代码块
END LOOP;
```
其中,`counter` 是计数器变量,`lower_bound` 和 `upper_bound` 分别是循环的起始值和结束值。
例如,以下代码将打印出数字 1 到 10:
```
BEGIN
FOR i IN 1..10 LOOP
DBMS_OUTPUT.PUT_LINE(i);
END LOOP;
END;
```
2. WHILE 循环
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 + 1;
END LOOP;
END;
```
3. LOOP 循环
LOOP 循环用于无限循环执行代码块,直到满足退出条件。它的语法如下:
```
LOOP
-- 待执行的代码块
EXIT WHEN condition;
END LOOP;
```
其中,`condition` 是一个布尔表达式,如果为真,则循环将终止。
例如,以下代码将打印出数字 1 到 10:
```
DECLARE
i NUMBER := 1;
BEGIN
LOOP
DBMS_OUTPUT.PUT_LINE(i);
i := i + 1;
EXIT WHEN i > 10;
END LOOP;
END;
```
这些循环结构在 Oracle 数据库中都很常见,并且在处理数据时非常有用。