我是 stackoverflow 的新手,也是 PL/SQL 的新手。我正在研究一些 PL/SQL 问题并试图解决这个问题。
基本上,我想创建一个名为 GET_ANNUAL_INCOME 的 PL/SQL 函数来返回指定员工的年薪,根据以下公式根据员工的月薪和佣金计算得出:
annual_ income = salary*12 +(commission_pct*salary*12)
GET_ANNUAL_COMPN 函数应该接受一个参数——员工 ID 并使用适当的查询 er.employees tbl 来计算该员工的年收入。我想在select语句中使用上面的公式来获取年薪
我已经创建了这个函数 -(这是正确的吗?)
CREATE FUNCTION GET_ANNUAL_INCOME (iEmpId IN INT)
RETURN FLOAT
IS annual_income FLOAT;
BEGIN
SELECT salary *12 +(commission_pct*salary*12)
INTO annual_income
FROM Employee
WHERE EmpId = iEmpId;
RETURN(annual_income);
END;
问题的第二部分是我想弄清楚的。有没有人可以帮助我或指导我。
最佳答案
看起来不错。
您现在可以查询特定的 empid
select GET_ANNUAL_INCOME(3) from dual;
或一组empid
select GET_ANNUAL_INCOME(empid) from employee;
关于sql - 使用PL/SQL函数获取员工薪酬记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40643566/