题解 | #获取当前薪水第二多的员工的emp_no以及其对应的薪水salary#

获取当前薪水第二多的员工的emp_no以及其对应的薪水salary

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

思路很简单,首先做一次max,把第一大的拿出来,之后查询全部数据,将第一大的数据t出去
最后使用第一大数据t出去的数据进行一个查询即可
with first_max as (select s.emp_no,max(s.salary) AS mex,e.last_name,e.first_name
from salaries s JOIN
employees e
on s.emp_no = e.emp_no)
,sheng as (select s.emp_no,s.salary,e.last_name,e.first_name
from salaries s,
employees e,first_max f
where s.emp_no = e.emp_no
and f.mex<>s.salary)
select * from sheng
where salary = (
select max(salary) res from sheng )

全部评论

相关推荐

我也曾抱有希望:说的好直白
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务