本文共 235 字,大约阅读时间需要 1 分钟。
SELECT *FROM `student` as swhere (select count(1)+1 from student where cid=s.cid and s.score<=3
思路是查询当前学生,比子查询(所有学生)中分数低的不超过三个,其中自己是相等,子查询结果为3的是第3,用s.score<score而不是<=是避免并列不显示(即这样可以把两个并列第三的都显示出来),相同班级用两个学生记录对比,而不是分组。
转载地址:http://znkmz.baihongyu.com/