sql script

select tmp.id, l.name, tmp.score
from (select id, language_id, dense_rank() over(partition by language_id order by score desc) as rank_s, score
      from grade) tmp, language l
where tmp.rank_s < 3
and tmp.language_id=l.id
order by l.name asc, tmp.score desc, tmp.id asc