Générez le relevé de notes des étudiants

Échauffement · joins, sorting

Étant données 3 tables, students(id, name), courses(id, name), grades(id, course_id, student_id, grade),

listez chaque cours suivi par chaque étudiant avec la note obtenue. Triez par nom d'étudiant

croissant, départagez par nom de cours croissant, puis par note croissante. Renvoyez les

colonnes (name, course, grade).

Colonnes attendues

name, course, grade

Indices

Indice 1 : quelles jointures

grades relie les deux autres tables : joignez students via grades.student_id et courses via grades.course_id. Chaque ligne de grades est une ligne du relevé. SHOW INDEX FROM grades montre lesquelles de ces colonnes de jointure sont indexées.

Indice 2 : rien à regrouper

La sortie ne contient aucun agrégat, donc GROUP BY ne fait qu'ajouter une table temporaire. ORDER BY name, course, grade suffit.