Система отслеживания отличников

MongoDBBeginner
Практиковаться сейчас

Введение

Вас наняли для управления базой данных «Список отличников» (Honor Roll) в университете. Университет отслеживает наиболее успешных студентов на основе их среднего балла (GPA). Ваша задача — наполнить базу данных сведениями о студентах и выявить тех, кто достоин включения в список отличников. Критерием является средний балл выше 3.7. Данные об этих выдающихся студентах необходимо сохранить в отдельной коллекции под названием honor_roll.

Это испытание проверит ваши навыки вставки данных, выполнения запросов по конкретным критериям и создания новых коллекций на основе результатов выборки.

Наполнение и запрос базы данных отличников

Вам предстоит вставить данные о студентах в коллекцию students и отобрать лучших из них для формирования коллекции honor_roll.

Задачи

  1. Вставьте следующие записи о студентах в коллекцию 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 }
]
  1. Выполните запрос к коллекции students, чтобы найти всех учащихся, чей gpa строго больше 3.7.
  2. Сохраните результаты этого запроса в новую коллекцию с именем honor_roll.

Требования

  • Все операции должны выполняться строго внутри базы данных university.
  • Коллекция honor_roll должна содержать только тех студентов, чей средний балл выше 3.7.
  • Исходная коллекция students должна остаться без изменений и содержать все первоначальные записи.

Подсказки

  • Использование ключевого слова const для сохранения результатов запроса поможет вам ссылаться на эти данные в дальнейшем.
  • Метод .toArray() полезен для преобразования результатов запроса в массив для последующей обработки.

Пример

После выполнения всех задач коллекция honor_roll должна выглядеть следующим образом:

[
  { "_id": ObjectId("..."), "name": "Anna Lee", "age": 19, "major": "Mathematics", "gpa": 3.9 },
  { "_id": ObjectId("..."), "name": "Chris Black", "age": 20, "major": "Physics", "gpa": 3.8 }
]

Коллекция students по-прежнему должна содержать все четыре записи:

[
  { "_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 }
]

Резюме

В этом испытании вы выступили в роли администратора базы данных университета, перед которым стояла задача сформировать список отличников. Вы успешно вставили данные о студентах в коллекцию students, выполнили запрос для поиска учащихся со средним баллом выше 3.7 и сохранили эти результаты в новую коллекцию honor_roll. Это практическое упражнение закрепило ваши навыки работы с командами MongoDB для вставки, поиска и эффективного управления коллекциями.

✨ Проверить решение и практиковаться