日期:2014-05-18  浏览次数:20512 次

如何求某学科前80%或40%标准分
要求在成绩统计表中 找出某年级某学科前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
)t
order by 语文 asc