Skip to content

WHILE语句

WHILE语句用于构造基本的条件语句。

语法格式

sql
WHILE bool_expr LOOP
  pl_stmt_list
{END LOOP | ENDLOOP};

WHILE为带条件的循环语句,在每次执行循环体前,先测试条件表达式,若条件成立,则进入循环体执行,否则退出循环。

参数说明

  • bool_expr:布尔表达式,当该表达式为TRUE时,则执行循环体内的语句;否则,退出循环。
  • pl_stmt_list:循环体内的一组语句,在每次循环中都会被执行。

示例

该示例实现效果等同于LOOP循环示例,区别在于该示例条件判断在循环体外,即是否进入循环体由WHILE后的表达式决定,当x<=1000时才进入循环体。

sql
DECLARE
  x INTEGER;
BEGIN
  x := 100;
  WHILE x <= 1000 LOOP
    x := x + 100;
  END LOOP;
  SEND_MSG(x);
END;
/

-- 输出
1100