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