用户名: 密码: 忘记密码? 注册
收藏此问题 发表新评论

mysql返回20%记录

有一个学校的奖学金表 school(classid,studentid,score) 返回每个班级成绩排名前20%的学生全部信息
如  
(1,1,100),
(1,2,99),
(1,3,97),
(1,4,96),
(1,5,94)
(2,1,100),
(2,2,99),
(2,3,97),
(2,4,96),
(2,5,94)

返回(1,1,100),(2,1,100)
不用存储过程,单独mysqlsql语句
昵称: hymin911  时间: 2011-06-16 11:33:45
返回每个班级成绩排名前20%的学生全部信息:解释一下,前20名?
昵称: WWWWA  时间: 2011-06-16 15:19:54
select * 
from school s
where (select count(*)*0.2 from school where classid=s.classid)>(select count(*) from school where classid=s.classid and score>s.score)
昵称: ACMAIN_CHM  时间: 2011-06-16 16:22:28
发表评论
昵称:
内容:
验证: