Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Défi : Recherche des Meilleurs Élèves en Mathématiques | Grouping
SQL Intermédiaire

Défi : Recherche des Meilleurs Élèves en Mathématiques

L'école est satisfaite de votre travail et accepte de poursuivre la collaboration.

Elle vous confie 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 vous devez faire en utilisant notre table employee comme exemple.

Supposons que vous deviez 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, vous pouvez utiliser la requête suivante :

1234
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 concernés, et nous avons utilisé les outils nécessaires pour obtenir ce résultat.

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 5
single

single

Défi : Recherche des Meilleurs Élèves en Mathématiques

Glissez pour afficher le menu

L'école est satisfaite de votre travail et accepte de poursuivre la collaboration.

Elle vous confie 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 vous devez faire en utilisant notre table employee comme exemple.

Supposons que vous deviez 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, vous pouvez utiliser la requête suivante :

1234
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 concernés, et nous avons utilisé les outils nécessaires pour obtenir ce résultat.

Tâche

Glissez pour commencer à coder

Récupérer jusqu'à 10 élèves en fonction de leurs notes à l'examen de Mathématiques qui sont au moins égales à 90. Pour ces notes, calculer la moyenne par élève. Trier les résultats par cette moyenne (nommée average_grade) par ordre décroissant.

Instructions brèves :

  • Sélectionner student_surname et la moyenne de la colonne grade en utilisant la fonction AVG().
  • Attribuer l'alias average_grade à la seconde colonne.
  • Filtrer les données pour ne conserver que les lignes où subject_name est Mathematics et grade est au moins 90.
  • Grouper les résultats par student_surname.
  • Trier les résultats par average_grade en ordre décroissant.
  • Utiliser LIMIT 10 pour ne retourner que 10 résultats.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 1. Chapitre 5
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

some-alt