← К оглавлению занятия

🔖 Справочник

📁 Блок: MongoDB / Практикум ⏱️ Время изучения: ~90 мин 🎯 Сложность: Практикум

⚡ Кратко: суть занятия

Практикум 14 закрепляет первые запросы MongoDB на учебных коллекциях sample_training и sample_restaurants.

Главная идея: сначала сузить выборку через Filter, затем отдельно решить, нужны ли Project, Sort, Limit или подсчёт.

В companies нужно найти компании, основанные с 2005 года, и разнести их по размеру штата.

Компании с number_of_employees: 0 источник рекомендует не учитывать.

Для acquisition нужно сортировать сделки по цене и выписать участников и source_url.

В trips нужно найти самую долгую аренду велосипеда и самый часто встречающийся bikeid.

В restaurants нужно посчитать рестораны по районам.

Топ-3 ошибки: считать нулевой штат как стартап, сортировать строковые деньги как числа, забывать limit(5) для топа поглощений.

Команды и операторы занятия

find()

Выбирает документы по условию.

db.companies.find({ founded_year: { $gte: 2005 } })

countDocuments()

Считает документы, которые подходят под фильтр.

db.companies.countDocuments({ number_of_employees: { $gt: 0 } })

sort()

Сортирует курсор; -1 означает убывание.

db.trips.find().sort({ tripduration: -1 }).limit(1)

limit()

Ограничивает количество документов в выдаче.

db.companies.find().sort({ "acquisition.price_amount": -1 }).limit(5)

aggregate()

Строит конвейер обработки данных, например группировку.

db.restaurants.aggregate([{ $group: { _id: "$borough", total: { $sum: 1 } } }])

Справочники курса

Локальный каталог MongoDB: справочник MongoDB. SQL-операторы предыдущих блоков: справочник SQL.