SQL2 查找入职员工时间排名倒数第三的员工所有信息

查找入职员工时间排名倒数第三的员工所有信息

https://www.nowcoder.com/practice/ec1ca44c62c14ceb990c3c40def1ec6c?tpId=82&&tqId=29754&rp=1&ru=/ta/sql&qru=/ta/sql/question-ranking

题目:入门级

CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL,
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));

代码:

方法一:

select *
from employees
order by hire_date desc
limit 2,1

方法二:

select * 
from employees
where hire_date =(
select distinct hire_date 
from employees
order by hire_date desc
limit 1 offset 2)

方法三:使用开窗函数

select emp_no,birth_date,first_name,last_name,gender,hire_date
from (
select *,rank() over(order by hire_date desc) as a
from employees
) t 
where t.a=3
全部评论

相关推荐

2 收藏 评论
分享
牛客网
牛客企业服务