PL/SQL - IF-THEN-ELSIF 语句
IF-THEN-ELSIF 语句允许您在多个备选方案之间进行选择。 IF-THEN 语句后面可以跟一个可选的ELSIF...ELSE 语句。 ELSIF 子句允许您添加其他条件。
使用 IF-THEN-ELSIF 语句时,有几点需要牢记。
这是 ELSIF,不是 ELSEIF。
一个 IF-THEN 语句可以有零个或一个 ELSE,并且它必须在任何 ELSIF 之后。
一个 IF-THEN 语句可以有零到多个 ELSIF,它们必须在 ELSE 之前。
一旦 ELSIF 成功,其余的 ELSIF 或 ELSE 都不会被测试。
语法
PL/SQL 编程语言中 IF-THEN-ELSIF 语句的语法是 −
IF(boolean_expression 1)THEN S1; -- Executes when the boolean expression 1 is true ELSIF( boolean_expression 2) THEN S2; -- Executes when the boolean expression 2 is true ELSIF( boolean_expression 3) THEN S3; -- Executes when the boolean expression 3 is true ELSE S4; -- executes when the none of the above condition is true END IF;
示例
DECLARE a number(3) := 100; BEGIN IF ( a = 10 ) THEN dbms_output.put_line('Value of a is 10' ); ELSIF ( a = 20 ) THEN dbms_output.put_line('Value of a is 20' ); ELSIF ( a = 30 ) THEN dbms_output.put_line('Value of a is 30' ); ELSE dbms_output.put_line('None of the values is matching'); END IF; dbms_output.put_line('Exact value of a is: '|| a ); END; /
在 SQL 提示符下执行上述代码时,会产生以下结果 −
None of the values is matching Exact value of a is: 100 PL/SQL procedure successfully completed.