PL/SQL - IF-THEN-ELSIF 語句



IF-THEN-ELSIF 語句允許你在多個備選方案之間進行選擇。IF-THEN 語句後可以跟一個可選的 ELSIF...ELSE 語句。ELSIF 子句允許你新增其他條件。

在使用 IF-THEN-ELSIF 語句時,需要記住以下幾點。

  • 它是 ELSIF,而不是 ELSEIF。

  • IF-THEN 語句可以有 0 個或 1 個 ELSE,它必須出現在所有 ELSIF 之後。

  • IF-THEN 語句可以有 0 個到多個 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. 
plsql_conditional_control.htm
廣告
© . All rights reserved.