select emp_no,birth_date,first_name,last_name,gender,hire_date
from
(
select *,rank() over(order by hire_date desc) rk
from employees
) a 
where a.rk = 1

为什么写的这么复杂呢?因为题目并没有说清楚最晚入职的员工是有一个人还是多个人,如果是多人的话那么通过简单的倒排,取第一行是不行的。

select * 
from employees
order by hire_date desc
limit 1;
2024年1月7日补充:
没想到精华题解已经说了这点...我还真的没看见