查找员工编号emp_no为10001的薪水涨了多少

查找员工编号emp_no为10001其自入职以来的薪水salary涨幅(总共涨了多少)growth

http://www.nowcoder.com/questionTerminal/c727647886004942a89848e2b5130dc2

1.使用MAX和MIN计算
找出来买个员工的薪水最大值和最小值,做减法,这种解法的前提是工资一直是上涨的

SELECT MAX(salary)-MIN(salary) AS growth
FROM salaries
WHERE emp_no=10001
GROUP BY emp_no

2.使用SUM
这种解法的妙处在于将历次的涨幅加在一起,但是这又有一个限制条件,就是薪水变化的日期都是连续的

select sum(s2.salary-s1.salary)
from salaries s1 , salaries s2
where s1.emp_no = 10001
and s1.to_date = s2.from_date
全部评论

相关推荐

字节 飞书绩效团队 (n+2) * 15 + 1k * 12 + 1w
点赞 评论 收藏
分享
11-09 01:22
已编辑
东南大学 Java
高级特工穿山甲:羡慕,我秋招有家企业在茶馆组织线下面试,约我过去“喝茶详谈”😢结果我去了发现原来是人家喝茶我看着
点赞 评论 收藏
分享
11-08 17:36
诺瓦科技_HR
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务