题解 | #获取当前薪水第二多的员工的emp_no以及其对应的薪水salary#
获取当前薪水第二多的员工的emp_no以及其对应的薪水salary
http://www.nowcoder.com/practice/c1472daba75d4635b7f8540b837cc719
思路:
- 我们首先通过
max()
求出第一大的薪水。 - 然后通过
<
去除最大的,且通过max()
求出第二大的。 - 表连接,取 salary = 第二大的薪水,及对应的字段值。
完整代码:
select e.emp_no, s.salary, e.last_name, e.first_name
from employees e inner join salaries s
on e.emp_no = s.emp_no
where s.salary = (select max(salary)
from salaries
where salary < (select max(salary)
from salaries
where to_date = '9999-01-01'
)
and to_date = '9999-01-01'
)
SQL练习 文章被收录于专栏
已完成牛客的SQL练习。接下来是算法的练习