说明 此程序中的逻辑可大大简化,方法是在游标声明的 SELECT 命令中使用 NVL 函数计算员工的年薪酬,但是,此示例的目的是演示如何使用 IF 语句。
下面是此程序的输出。
Average Yearly Compensation: $ 53,528.57
EMPNO YEARLY COMP
----- -----------
7369 $ 19,200.00 Below Average
7499 $ 45,600.00 Below Average
7521 $ 42,000.00 Below Average
7566 $ 71,400.00 Exceeds Average
7654 $ 63,600.00 Exceeds Average
7698 $ 68,400.00 Exceeds Average
7782 $ 58,800.00 Exceeds Average
7788 $ 72,000.00 Exceeds Average
7839 $ 120,000.00 Exceeds Average
7844 $ 36,000.00 Below Average
7876 $ 26,400.00 Below Average
7900 $ 22,800.00 Below Average
7902 $ 72,000.00 Exceeds Average
7934 $ 31,200.00 Below Average
在使用此形式时,实际上将 IF 语句嵌套在外部 IF 语句的 ELSE 部分中。因此,每个嵌套的 IF 都需要一个 END IF 语句,并且父 IF-ELSE 也需要一个。