如何分组固定计数范围?

时间:2010-12-15 18:06:04

标签: sql postgresql

假设我有一个包含两列的表(student_id,grade)。

student_id是一个整数,等级是十进制数。

如果我有1000名学生,并希望按年级分组,每组10名学生。

为了清楚起见,这应该产生100组。第一组包含10个最高等级,最后一组包含10个最低等级。

我该怎么做? 随时欢迎优化。

非常感谢。

若昂

1 个答案:

答案 0 :(得分:1)

ntile将根据一定数量的分数进行排名。

select student_id, ntile(100) over (order by grade desc) from student