select id, name, score from (select g.id,name,score,dense_rank()over(partition by language_id order by score desc) r from grade g left join language l on g.language_id=l.id) t1 where r=1 or r=2 order by name, r
select id, name, score from (select g.id,name,score,dense_rank()over(partition by language_id order by score desc) r from grade g left join language l on g.language_id=l.id) t1 where r=1 or r=2 order by name, r