SQL_212

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

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

方法一:

思路: 这题的关键在于如何求第二高薪水,利用子查询嵌套子查询。

①先在工资表里找出最多工资,再以工资小于最大工资为限定条件,即 salary <(select max (salary) 可以得到除去排名第一工资的表。

②再使用 max (salary) 在除去排名第一工资的表里找最大的工资,即找到排名第二的工资。

代码:

select
    e.emp_no,
    salary,
    last_name,
    first_name
from
    employees e
    left join salaries s on e.emp_no = s.emp_no
where
    salary = (
        select
            max(salary)
        from
            salaries
        where
            salary < (
                select
                    max(salary)
                from
                    salaries
            )
    )

全部评论

相关推荐

头像
11-18 16:08
福州大学 Java
影流之主:干10年不被裁,我就能拿别人一年的钱了,日子有盼头了
点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务