Имея некоторые проблемы, разработанные наилучшим способом сделать это в MongoDB, возможно, это набор данных отношений, поэтому я, вероятно, буду называться. Тем не менее его задача - проверить, возможно ли это.MongoDB Сортировка по средним комбинированным номерам или вложенным вспомогательным массивам
В настоящее время мне необходимо заказать ежедневные среднемировые милиции менеджеров по логистике через микроавтобусы в своем отделе, а также в отдельном списке комбинированное недельное среднее.
Г-н Первая установка в базе данных следующим образом
{
"_id" : ObjectId("555cf04fa3ed8cc2347b23d7"),
"name" : "My Manager 1",
"vans" : [
{
"name" : "van1",
"miles" : NumberLong(56)
},
{
"name" : "van2",
"miles" : NumberLong(34)
}
]
}
Но я не могу понять, как сделать заказ вложенным значения массива, не зная ключа родительского массива (это будет стандартный 0-х)
Таким образом, мой следующий выбор заключался в том, чтобы отказаться от этой идеи, просто получив имя в первой коллекции и в фургонах во второй коллекции с Id менеджера.
Поэтому удаление фургонов из приведенного выше примера и добавление этой коллекции (фургоны)
{
"_id" : ObjectId("555cf04fa3ed8cc2347b23d9"),
"name" : "van1",
"miles" : NumberLong(56),
"manager_id" : "555cf04fa3ed8cc2347b23d7"
}
Но поскольку мне нужно показать результаты от менеджера, как сделать заказ в запросе (если возможно) средний миль эта коллекция, где id = x, а затем отображает менеджера по его идентификатору.
Спасибо за вашу помощь
Привет, спасибо, это отличный совет. Я попробовал это, и он работал, но возврат avg_mile составлял 0.000? – deejuk
была ошибка, обновлен ответ, попробуйте еще раз :) – bagrat
Подождите, забыл удалить $ с .miles. Это работает сладкий вау, так что это возможно благодаря вам за помощь. Как насчет миль. x 7, а затем показывая это в списке вместо среднего – deejuk