select
t2.id,
t2.name,
t2.score
from
(select
t1.id,
t1.name,
t1.score,
dense_rank() over(partition by t1.name order by t1.score desc) as score_rank
from
(select
g.id,
l.name,
g.score
from grade g left join language l
on g.language_id=l.id) t1) t2
where
t2.score_rank<=2
order by
t2.name,t2.score desc,t2.id;



京公网安备 11010502036488号