位置:首頁 > 數據庫 > PL/SQL教學 > PL/SQL IF-THEN-ELSIF語句

PL/SQL IF-THEN-ELSIF語句

在IF-THEN-ELSIF語句可以幾種選擇之間進行選擇。一個IF-THEN語句可以跟著一個可選的 ELSIF...ELSE 語句。ELSIF子句允許添加附加條件。

使用IF-THEN-ELSIF語句時有幾點要牢記。

  • 它是ELSIF, 而不是 ELSEIF

  • 一個IF-THEN語句可以有零或一個ELSE語句,它必須跟從ELSIF語句。

  • 一個IF-THEN語句可以有0到多個ELSIF,它們必須在ELSE之前。

  • 一旦某個ELSIF成功,任何剩餘的ELSIF或其他都不被測試。

語法:

在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.