Личная копия
В Compass экспортируйте ich.UK_used_cars и импортируйте в ich_edit.UK_used_cars_ВАШЕ_ИМЯ. В Atlas можно импортировать JSON из ссылки источника.
Практикум 19 работает с собственной копией коллекции UK_used_cars.
Сначала нужно экспортировать ich.UK_used_cars или импортировать JSON из GitHub в ich_edit с личным суффиксом.
Базовые задачи проверяют производителей: список марок, максимум документов и распределение по transmission.
Для среднего пробега по производителям используется $group с $avg и счётчиком документов.
mpg переводится в l/100km формулой 282.481 / mpg и сохраняется как новое поле.
$merge нужен, чтобы записать вычисленное поле обратно в существующую коллекцию.
$bucket распределяет дизельные авто по диапазонам цены до 20000, 20000-30000, 30000-40000, 40000-60000 и выше 60000.
Топ-3 ошибки: работать в общей коллекции без копии, делить mpg на 282.481 вместо обратной формулы, забыть readable labels для bucket-категорий.
В Compass экспортируйте ich.UK_used_cars и импортируйте в ich_edit.UK_used_cars_ВАШЕ_ИМЯ. В Atlas можно импортировать JSON из ссылки источника.
Используйте distinct("manufacturer") для списка или $group по manufacturer, если сразу нужен счётчик.
$group считает cars, затем $sort: { cars: -1 } и $limit: 1 оставляют производителя-лидера.
$group по transmission показывает распределение. Если названия в данных отличаются регистром, сначала проверьте реальные значения distinct("transmission").
$avg по mileage даёт средний пробег, $sum: 1 показывает размер группы.
Используйте $divide: [282.481, "$mpg"]. Если mpg отсутствует или равен 0, такую запись лучше предварительно отфильтровать.
Стадия $merge должна быть последней: она записывает изменённые документы в указанную коллекцию.
$bucket возвращает техническую нижнюю границу диапазона в _id, поэтому для читаемого отчёта добавьте category через $switch.