sql面试 查找每个班级的前5名学生(取分类数据的前几条数据)


 

关键字PARTITION BY

自己看代码喽~

SELECT 
       *
FROM
(
    SELECT ROW_NUMBER() OVER (PARTITION BY ClassType ORDER BY Score DESC) rowid,
           ClassType,
           Name,
           Score
    FROM dbo.CAMAIN
) TT
WHERE TT.rowid <= 5;

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM