题解 | #查找在职员工自入职以来的薪水涨幅情况#

查找在职员工自入职以来的薪水涨幅情况

http://www.nowcoder.com/practice/fc7344ece7294b9e98401826b94c6ea5

--先查出当前职工的工资,条件是日期to_date=9999-01-01
--再查出入职时的工资,条件是新水表的from_date=员工表的hire_date 以及 两表员工编号相等
--然后在做总的查询,将两个表连接起来取别名s1和s2,在查询语句中可以直接做s1.salary-s2.salary计算growth,s1和s2连接的条件就是员工编号相等
--最后以growth做排序,默认升序

select s1.emp_no,(s1.salary-s2.salary) as growth from
(select emp_no,salary from salaries where to_date='9999-01-01')s1
join
(select s.emp_no,s.salary from salaries s join employees e on s.from_date=e.hire_date and s.emp_no=e.emp_no)s2
on s1.emp_no = s2.emp_no
order by growth;

全部评论

相关推荐

点赞 评论 收藏
分享
点赞 评论 收藏
分享
06-12 16:00
天津大学 Java
牛客30236098...:腾讯坏事做尽,终面挂是最破防的 上次被挂了后我连简历都不刷了
点赞 评论 收藏
分享
07-10 11:08
门头沟学院 Java
投递京东等公司9个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务