Introducción
Has sido contratado para gestionar la base de datos del "Cuadro de Honor" de una universidad. La institución realiza un seguimiento de los alumnos con alto rendimiento basándose en su promedio de calificaciones (GPA). Tu tarea consiste en poblar la base de datos con la información de los estudiantes e identificar a aquellos que califican para el Cuadro de Honor, definidos como estudiantes con un GPA superior a 3.7. Deberás almacenar a estos alumnos destacados en una colección independiente llamada honor_roll.
Este desafío pondrá a prueba tu capacidad para insertar datos, realizar consultas de registros específicos y crear nuevas colecciones a partir de los resultados obtenidos.
Poblar y Consultar la Base de Datos del Cuadro de Honor
Insertarás los datos de los estudiantes en la colección students y realizarás una consulta de los alumnos con mejor rendimiento para poblar la colección honor_roll.
Tareas
- Inserta los siguientes registros de estudiantes en la colección
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 }
]
- Consulta la colección
studentspara encontrar a los alumnos con ungpasuperior a 3.7. - Guarda los resultados de tu consulta en una nueva colección llamada
honor_roll.
Requisitos
- Opera exclusivamente dentro de la base de datos
university. - La colección
honor_rolldebe incluir únicamente a los estudiantes con un GPA superior a 3.7. - La colección
studentsdebe permanecer intacta con todos sus registros originales.
Consejos
- Utilizar
constpara almacenar los resultados de tu consulta puede ayudarte a referenciar los datos más adelante. - El método
.toArray()es útil para convertir los resultados de una consulta en un arreglo para su posterior procesamiento.
Ejemplo
Tras completar las tareas, la colección honor_roll debería contener:
[
{ "_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 colección students aún debe contener los cuatro registros:
[
{ "_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 }
]
Resumen
En este desafío, actuaste como administrador de base de datos de una universidad con la misión de identificar a los estudiantes del Cuadro de Honor. Lograste insertar con éxito los datos de los alumnos en la colección students, consultaste a los de alto rendimiento con un GPA superior a 3.7 y almacenaste dichos resultados en una nueva colección honor_roll. Este ejercicio práctico ha reforzado tu comprensión de los comandos de MongoDB para insertar, consultar y gestionar colecciones de manera eficaz.

