查找成绩排名第二的学生

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_36246371/article/details/72819252

假设有这样的一张表student:

name    mark
---------------
Alice   98
Bob     67
Eric    75
Kato    84

首先找到排名第一的学生,这一步没啥难度:

SELECT name, MAX(mark) as mark FROM student 

有了最高成绩了,那么次高成绩也就很容易搞定了,也就是把所有小于最高成绩的全部拿出来,然后再在这个范围内找出最高成绩,那就是次高成绩:

SELECT name, MAX(mark) AS mark
FROM student
WHERE mark < (SELECT MAX(mark) FROM student); 
展开阅读全文

没有更多推荐了,返回首页