Je hebt een aantal manieren om dat te doen, maar als je probeert geen tijdelijke tabellen te maken, kun je zoiets doen:
select
s.id,
avg(case when sb.id = '01' then s.score end) as math,
avg(case when sb.id = '02' then s.score end) as bio
from student s
join subject sb on (sb.id = s.subject_id)
group by s.id
Vul gewoon de som-/hoofdletterregels naar de andere onderwerpen in als je nodig hebt!
Ik hoop dat het helpt.