题解 | #胎教毕业也能懂-子查询-查找入职员工时间排名倒数第三的员工所有信息#
查找入职员工时间排名倒数第三的员工所有信息
http://www.nowcoder.com/practice/ec1ca44c62c14ceb990c3c40def1ec6c
假设某一个员工入职时间倒数第三,也就是说有且仅有2个入职时间比他大!基于此思想,我们可以用子查询的方式实现:
select e1.*
from employees e1
where 2 = ( -- 子查询中查找比这个入职时间晚的,当且仅当值为2时可以得到结果
select count(distinct e2.hire_date) -- 务必要去重
from employees e2
where e2.hire_date > e1.hire_date
)