2
меня сильно вложенной MongoDB набор объектов, и я хочу, чтобы отсортировать subofdocuments по результату суммы их голоса, например:MongoDB агрегации вложенная объекта сумма и вид
{
"_id":17846384es,
"company_name":"company1",
"products":[
{
"product_id":"123785",
"product_name":"product1",
"user_votes":[
{
"user_id":1,
"vote":1
},
{
"user_id":2,
"vote":2
}
]
},
{
"product_id":"98765",
"product_name":"product2",
"user_votes":[
{
"user_id":5,
"vote":3
},
{
"user_id":3,
"vote":3
}
]
}
]
}
я хочу, чтобы отсортировать, как по убыванию продукции в соответствии в результате сумма их голосов ожидаемый выход
{
"_id":17846384es,
"company_name":"company1",
"products":[
{
"product_id":"98765",
"product_name":"product2",
"user_votes":[
{
"user_id":5,
"vote":3
},
{
"user_id":3,
"vote":3
}
]
"votes":8
},
{
"product_id":"123785",
"product_name":"product1",
"user_votes":[
{
"user_id":1,
"vote":1
},
{
"user_id":2,
"vote":2
}
],
"votes":3
}
]
}
Любая идея?
Могу ли я получить этот результат с информацией о компании в одном результате? –
Пожалуйста, покажите свой ожидаемый результат, чтобы избежать недоразумений – DAXaholic
Просто обратите внимание, что $ sum в рамках этапа $ project доступна только в MongoDB 3.2 и выше. – Wake