Du har nogle måder at gøre det på, men hvis du prøver ikke at oprette midlertidige tabeller, kan du gøre sådan noget:
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
Udfyld blot sum/case-linjerne til de andre fag, som du har brug for!
Håber det hjælper.