题解 | #给出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)

全部评论

相关推荐

不愿透露姓名的神秘牛友
03-18 14:29
牛客604067584号:感觉算法卷的人少很多,毕竟只有一部分bg还不错的硕士才会考虑算法,虽然hc不如后端,但是竞争真的少很多。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务