编号 姓名 职称 到职日 薪水 季奖金 7788 SCOTT ANALYST 1982/12/9 3,000 1,500 ☆
7839 KING PRESIDENT 1981/11/17 5,000 5,000
7844 TURNER SALESMAN 1981/9/8 1,500 1,500
7876 ADAMS CLERK 1983/1/12 1,100 1,100 ☆季奖金: 1982/1/1(含)以后到职者只能拿半薪, 但员工Clerk不受此限制, 仍能拿到全部奖金季奖金 =
如果到职日 > 1982-1-1 并且职称 <> clerk 则拿到工资的一半做季奖金
其它人员 则可以拿到全部工资做为季奖金
用select 来怎么实现?最主要就是季奖金如何判断?
7839 KING PRESIDENT 1981/11/17 5,000 5,000
7844 TURNER SALESMAN 1981/9/8 1,500 1,500
7876 ADAMS CLERK 1983/1/12 1,100 1,100 ☆季奖金: 1982/1/1(含)以后到职者只能拿半薪, 但员工Clerk不受此限制, 仍能拿到全部奖金季奖金 =
如果到职日 > 1982-1-1 并且职称 <> clerk 则拿到工资的一半做季奖金
其它人员 则可以拿到全部工资做为季奖金
用select 来怎么实现?最主要就是季奖金如何判断?
then 季奖金 else 季奖金/2 end 季奖金 from table.
select 编号,姓名,case when 到职日<to_date('19820101','yyyymmdd') or 职称='CLERK'
then 季奖金 else 季奖金/2 end 季奖金 from table.
CASE WHEN HIREDATE <= TO_DATE('19820101','yyyymmdd') OR JOB='CLERK' THEN
SAL
ELSE
SAL/2
END
) 季獎金計合
FROM Table