Что такое агрегатный запрос mongodb для этого? - PullRequest
0 голосов
/ 07 февраля 2019

Кто-нибудь может мне помочь?Какой правильный запрос агрегации MongoDB для получения этих данных?

Что если я получу такой результат:

{"_id": 1000, "items": ["laptop", "мышь ",], ...}

1 Ответ

0 голосов
/ 07 февраля 2019

Я думаю, у вас есть коллекция с заказом, в которой есть ссылка на товары, и вы хотите найти все товары для заказа, не так ли?

Возможно, вы хотите использовать $lookup вваш агрегатный конвейер, см .: https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/

Поскольку items - это массив, который вы должны сначала использовать $unwind.Таким образом, ваш агрегатный конвейер будет выглядеть примерно так: db.orders.aggregate([{$unwind:'items'},{$lookup:{from:'products',localField:'items',foreignField:'_id',as:'item_product'}}])

Возможно, вам придется настроить запрос в соответствии с вашими конкретными потребностями, но это примерно то, что вам нужно

...