Recherche des Meilleurs Élèves en Mathématiques : Défi
L'école est satisfaite de notre travail et accepte de poursuivre la collaboration.
Ils nous confient maintenant une nouvelle mission. Les 10 meilleurs élèves ayant la moyenne la plus élevée se verront offrir un voyage dans un centre scientifique en guise de récompense. Une condition obligatoire est d'obtenir une note supérieure à 90 à l'examen de mathématiques. Pour identifier ces élèves, ils font appel à vous.
Voyons ce que nous devons faire en utilisant notre table employee
comme exemple.
Supposons que nous devions déterminer dans quels départements se trouvent les employés qui ont été embauchés avant 2019 ainsi que la salaire moyen dans ces départements. Pour réaliser cette tâche, nous pouvons utiliser la requête suivante :
SELECT department, AVG(salary) AS average_salary FROM employees WHERE hire_date < '2019-01-01' GROUP BY department
Comme vous pouvez le constater, il n'y a que 3 employés dans ce cas, et nous avons utilisé les outils nécessaires pour obtenir ce résultat.
Swipe to start coding
Récupérer jusqu'à 10 étudiants ayant la moyenne la plus élevée en mathématiques parmi tous les étudiants ayant obtenu une note supérieure ou égale à 90 à l'examen de mathématiques.
Triez également le résultat par la colonne average_grade
dans l'ordre décroissant.
Attribuez l'alias average_grade
à la moyenne des notes de mathématiques afin de garantir la vérification correcte de la tâche.
Instructions brèves
- Récupérer la colonne
student_surname
et la moyenne de la colonnegrade
à l'aide de la fonctionAVG()
. - Attribuer l'alias
average_grade
à la seconde colonne. - Appliquer une condition où
grade >= 90
etsubject_name = 'Mathematics'
. - Grouper les résultats par
student_surname
. - Trier les résultats par
average_grade
dans l'ordre décroissant. - Utiliser la clause
LIMIT
pour ne retourner que 10 résultats.
Solution
Merci pour vos commentaires !