题解 | #给出employees表中排名为奇数行
给出employees表中排名为奇数行的first_name
https://www.nowcoder.com/practice/e3cf1171f6cc426bac85fd4ffa786594
分步解
1.先找对名字进行排序
select
emp_no,
first_name,
dense_rank() over (
order by
first_name asc
) rk
from
employees)
2.然后再用in语句筛选出符合条件的first_name的值
3.最后代码如下:
select e.first_name from employees e
where e.first_name in (select t.first_name from (select
emp_no,
first_name,
dense_rank() over (
order by
first_name asc
) rk
from
employees)t
where t.rk % 2=1)