题解 | #对于employees表中,给出奇数行的first_name#

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

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

为了保持原表的顺序,需要把rk作为一个单独的tag加入原表。
所以先用一个子查询,做出first_name和rank的对应关系

select first_name,rank()over(order by first_name) as rk
from employees 

然后再用这个表和原表关联

SELECT
t1.first_name
FROM employees t1
JOIN(
     SELECT first_name
     ,rank()over(order by first_name) rk
     FROM employees
    ) t2
ON t1.first_name = t2.first_name
WHERE t2.rk % 2 = 1

不熟悉的知识点:mysql怎么取奇偶数

语法和python一样
a % 2 = 0 表示偶数
a % 2 = 1表示奇数

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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