自用题解

对于employees表中,给出奇数行的first_name

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

通过窗口函数生成一张新的表

    select 
    `emp_no` as `e_n`,
      `first_name`,
      row_number() over(order by `first_name` asc) as `r_num`
    from 
      `employees`

图片说明

然后与原表进行连接操作

select 
  `e`.`first_name`
from 
  `employees` as `e`
inner join
  (
    select 
    `emp_no` as `e_n`,
      `first_name`,
      row_number() over(order by `first_name` asc) as `r_num`
    from 
      `employees`
  ) as `t`
on
  `e`.`emp_no`=`t`.`e_n`
where
  `t`.`r_num`%2=1
全部评论

相关推荐

不愿透露姓名的神秘牛友
07-04 14:35
点赞 评论 收藏
分享
05-26 10:24
门头沟学院 Java
qq乃乃好喝到咩噗茶:其实是对的,线上面试容易被人当野怪刷了
找工作时遇到的神仙HR
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务