题解 | #排名为奇数行的first_name#

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

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

SELECT
first_name  first
FROM
employees
WHERE first_name in (
SELECT 
 subquery.first_name first
FROM (  
  SELECT  
    first_name,  
    ROW_NUMBER() OVER (ORDER BY first_name) AS pai  
  FROM  
    employees   
) AS subquery  
WHERE  
  mod(subquery.pai, 2) = 1
  )

由于要取出奇数行,所以需要一列字段记录排名,遂使用开窗函数

因为要按原表顺序输出,所以使用where 子句实现

全部评论

相关推荐

点赞 评论 收藏
分享
叁六玖:不买课还想秋招
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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