题解 | #给出employees表中排名为奇数行的first_name#

给出employees表中排名为奇数行的first_name

http://www.nowcoder.com/practice/e3cf1171f6cc426bac85fd4ffa786594

知识点

  1. 该题的意思是先按照first_name升序排序,然后取序号为奇数的行,最后输出的结果要按照原表的顺序
  2. 因此使用窗口函数排序内连接到原表里面,选择序号为奇数的就行

代码

select e.first_name
from employees as e
join (
    select first_name,
    row_number() over (order by first_name) as rk_name
    from employees) as r
on e.first_name = r.first_name
where r.rk_name % 2 = 1
全部评论

相关推荐

牛客5655:其他公司的面试(事)吗
点赞 评论 收藏
分享
11-18 09:44
Java
小白也想要offer:简历别放洋屁,搞不还还放错了,当然你投外企除外,以上纯属个人观点
点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务