要求在成绩统计表中 找出某年级某学科前80%成绩的标准分:学科分数倒序排序前80%人数的最后一个学生的该学科成绩为 该学科的标准分。
目前只知道求第n条记录的方法,但是这个n无法计算出来,如:求第1441名同学的语文成绩,以此作为标准分,1441为该年级人数的第80%。
- SQL code
select * from ( select row_number() over(order by 语文 desc) as px,年级,语文 from scores_xx where 年级=1) t where px = 1441;
但是这个1441如何计算出来,求思路…………
------解决方案--------------------
- SQL code
select top 1 *from(select top 80 percent * from scores_xx order by 语文 desc)torder by 语文 asc