Mysql
 sql >> Base de données >  >> RDS >> Mysql

comment sélectionner 2 tables comme celle-ci

Vous avez plusieurs façons de le faire, mais en essayant de ne pas créer de tables temporaires, vous pouvez faire quelque chose comme ça :

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

Remplissez simplement les lignes somme/cas pour les autres sujets selon vos besoins !

J'espère que ça aide.