创建名为ANNUAL_COMP的函数,通过接收两个参数(某个员工的月工资pi_sal和奖金pi_comm)计算年薪并返回年薪。该函数中要求进行空值处理(即工资和奖金为null时都视为0)。 (1)创建函数ANNUAL_COMP,传递两个参数(某个员工的月工资pi_sal和奖金pi_comm),使用下面的公式计算年薪:年薪=(月工资*12)+奖金。要求这两个值要进行空值处理。 (2)要求用SQL查询语句来调用函数,以显示20号部门所有的雇员编号、姓名、工资、奖金以及年薪(年薪要求调用函数获得)。
时间: 2024-03-20 13:43:49 浏览: 58
下面是创建函数ANNUAL_COMP的SQL代码:
```
CREATE OR REPLACE FUNCTION ANNUAL_COMP(pi_sal NUMBER, pi_comm NUMBER)
RETURN NUMBER
IS
v_sal NUMBER := 0;
v_comm NUMBER := 0;
BEGIN
IF pi_sal IS NOT NULL THEN
v_sal := pi_sal;
END IF;
IF pi_comm IS NOT NULL THEN
v_comm := pi_comm;
END IF;
RETURN (v_sal * 12) + v_comm;
END;
```
下面是查询20号部门所有雇员的SQL代码:
```
SELECT empno, ename, sal, comm, ANNUAL_COMP(sal, comm) as annual_salary
FROM emp
WHERE deptno = 20;
```
这个查询将返回20号部门所有雇员的编号、姓名、工资、奖金以及年薪(使用ANNUAL_COMP函数获得)。
阅读全文