查询各科成绩前三名的记录

Posted shrewdness

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查询各科成绩前三名的记录相关的知识,希望对你有一定的参考价值。

查询各科成绩前三名的记录:(不考虑成绩并列情况),显示(学号、课程号、分数)

SELECT * FROM (
              SELECT SC.STUDENT_NO SNO,
              SC.COURSE_NO CNO,
              SC.CORE SCORE,
              ROW_NUMBER() OVER(PARTITION BY SC.COURSE_NO ORDER BY SC.CORE DESC) RN
              FROM HAND_STUDENT_CORE SC) A
WHERE A.RN <= 3

row_number() OVER (PARTITION BY COL1 ORDER BY COL2) 

表示根据COL1分组,在分组内部根据 COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)

 

以上是关于查询各科成绩前三名的记录的主要内容,如果未能解决你的问题,请参考以下文章

MySQL 查询各科前三名(考虑成绩并列情况)

MySQL 查询各科前三名(考虑成绩并列情况)

sql语句查询成绩表各科前三名

Sql取出各科分数前三名的学生,Sql各科成绩前三的学生

EXCEL中按班级提取前各科的前三名、后三名的成绩及姓名?

Mysql 单表查询各班级总分前三名