IF THEN ELSIF statement
IF condition_1 THEN statements_1; ELSIF condition_2 THEN statements_2; ELSIF condition_3 THEN statement_3; END IF;
Logically equivalent nested IF THEN ELSE statements
IF condition_1 THEN statements_1; ELSE IF condition_2 THEN statements_2; ELSE IF condition_3 THEN statements_3; END IF; END IF; END IF;
The following code uses an IF THEN ELSIF statement with many ELSIF clauses to compare a single value to many possible values.
For this purpose, a simple CASE statement is clearer.
IF THEN ELSIF Statement Simulates Simple CASE Statement
SQL> SQL> DECLARE-- from w ww . j a va2 s.c o m 2 final_mark CHAR(1); 3 BEGIN 4 final_mark := 'B'; 5 6 IF final_mark = 'A' THEN 7 DBMS_OUTPUT.PUT_LINE('Excellent'); 8 ELSIF final_mark = 'B' THEN 9 DBMS_OUTPUT.PUT_LINE('Very Good'); 10 ELSIF final_mark = 'C' THEN 11 DBMS_OUTPUT.PUT_LINE('Good'); 12 ELSIF final_mark = 'D' THEN 13 DBMS_OUTPUT. PUT_LINE('Fair'); 14 ELSIF final_mark = 'F' THEN 15 DBMS_OUTPUT.PUT_LINE('Poor'); 16 ELSE 17 DBMS_OUTPUT.PUT_LINE('No such final_mark'); 18 END IF; 19 END; 20 / Very Good PL/SQL procedure successfully completed. SQL> SQL>