select id, name, score from(
select grade.id, name, score, dense_rank() over(
partition by language_id
order by score desc
) as rk
from grade
join language on grade.language_id = language.id
) as tb
where rk <= 2
order by name, score desc, id



京公网安备 11010502036488号