题解 | #查找在职员工自入职以来的薪水涨幅情况#
查找在职员工自入职以来的薪水涨幅情况
http://www.nowcoder.com/practice/fc7344ece7294b9e98401826b94c6ea5
select B.emp_no, (B.salary-A.salary) as growth from ( select e.emp_no, s.salary from employees e left join salaries s on e.emp_no = s.emp_no and e.hire_date = s.from_date) as A inner join ( select e.emp_no, s.salary from employees e left join salaries s on e.emp_no = s.emp_no where s.to_date='9999-01-01') as B on A.emp_no = B.emp_no order by growth;
思路:为了求出工资的前后差别,需要构建两个表格A.关于入职时的工资B.现在的工资,构建出来后用B-A即可得出工资差growth。注意,一定要注意输入法的使用,之前错的原因可能是输入时用的是中文输入法