Plsql-if-then-elsif
提供:Dev Guides
PL/SQL-IF-THEN-ELSIFステートメント
*IF-THEN-ELSIF* ステートメントを使用すると、いくつかの選択肢から選択できます。 *IF-THEN* ステートメントの後に、オプションの *ELSIF ... ELSE* ステートメントを続けることができます。 *ELSIF* 句を使用すると、条件を追加できます。
*IF-THEN-ELSIF* ステートメントを使用する場合、留意すべき点がいくつかあります。
- ELSEIFではなくELSIFです。
- IF-THENステートメントには0個または1個の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.