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日补充:
没想到精华题解已经说了这点...我还真的没看见