Introduction
Vous avez été recruté pour gérer la base de données du « Tableau d'Honneur » d'une université. L'établissement suit les étudiants les plus performants en se basant sur leur moyenne générale (GPA). Votre mission consiste à alimenter la base de données avec les informations des étudiants et à identifier ceux qui remplissent les critères du Tableau d'Honneur, définis par une moyenne supérieure à 3.7. Vous devrez enregistrer ces étudiants d'élite dans une collection distincte nommée honor_roll.
Ce défi testera votre capacité à insérer des données, à interroger des enregistrements spécifiques et à créer de nouvelles collections à partir des résultats de vos requêtes.
Alimenter et interroger la base de données du Tableau d'Honneur
Vous allez insérer les données des étudiants dans la collection students et extraire les profils les plus performants pour alimenter la collection honor_roll.
Tâches
- Insérez les enregistrements d'étudiants suivants dans la collection
students:
[
{ "name": "Anna Lee", "age": 19, "major": "Mathematics", "gpa": 3.9 },
{ "name": "Sam Green", "age": 21, "major": "History", "gpa": 3.4 },
{ "name": "Chris Black", "age": 20, "major": "Physics", "gpa": 3.8 },
{ "name": "Jamie White", "age": 22, "major": "Literature", "gpa": 3.5 }
]
- Interrogez la collection
studentspour trouver les étudiants ayant ungpasupérieur à 3.7. - Enregistrez les résultats de votre requête dans une nouvelle collection nommée
honor_roll.
Exigences
- Opérez exclusivement au sein de la base de données
university. - La collection
honor_rollne doit inclure que les étudiants ayant une moyenne supérieure à 3.7. - La collection
studentsdoit rester intacte et conserver tous les enregistrements initiaux.
Astuces
- L'utilisation de
constpour stocker les résultats de votre requête peut vous aider à référencer les données ultérieurement. - La méthode
.toArray()est utile pour convertir les résultats d'une requête en un tableau exploitable.
Exemple
Une fois les tâches accomplies, la collection honor_roll devrait contenir :
[
{ "_id": ObjectId("..."), "name": "Anna Lee", "age": 19, "major": "Mathematics", "gpa": 3.9 },
{ "_id": ObjectId("..."), "name": "Chris Black", "age": 20, "major": "Physics", "gpa": 3.8 }
]
La collection students doit toujours contenir les quatre enregistrements :
[
{ "_id": ObjectId("..."), "name": "Anna Lee", "age": 19, "major": "Mathematics", "gpa": 3.9 },
{ "_id": ObjectId("..."), "name": "Sam Green", "age": 21, "major": "History", "gpa": 3.4 },
{ "_id": ObjectId("..."), "name": "Chris Black", "age": 20, "major": "Physics", "gpa": 3.8 },
{ "_id": ObjectId("..."), "name": "Jamie White", "age": 22, "major": "Literature", "gpa": 3.5 }
]
Résumé
Dans ce défi, vous avez agi en tant qu'administrateur de base de données pour une université, avec pour mission d'identifier les étudiants du Tableau d'Honneur. Vous avez inséré avec succès les données académiques dans la collection students, extrait les profils ayant une moyenne supérieure à 3.7 et stocké ces résultats dans une nouvelle collection honor_roll. Cet exercice pratique a renforcé votre maîtrise des commandes MongoDB pour l'insertion, la requête et la gestion efficace des collections.

