У меня есть две коллекции:
// users
{
_id: "5cc7c8773861275845167f7a",
name: "John",
accounts: [
{
"_id": "5cc7c8773861275845167f76",
"name": "Name1",
},
{
"_id": "5cc7c8773861275845167f77",
"name": "Name2",
}
]
}
// transactions
{
"_id": "5cc7c8773861275845167f75",
"_account": "5cc7c8773861275845167f76",
}
Используя поиск, я хочу заполнить поле _account
в коллекции транзакций соответствующим элементом из массива users.accounts
.
Итак,Я хочу, чтобы конечный результат был следующим:
{
"_id": "5cc7c8773861275845167f75",
"_account": {
"_id": "5cc7c8773861275845167f76",
"name": "Name1",
},
}
Я уже пытался использовать этот код:
db.transactions.aggregate([
{
$lookup:
{
from: "users.accounts",
localField: "_account",
foreignField: "_id",
as: "account"
}
}
])
В массиве результатов счет становится пустым.
Что такоеправильный способ сделать это?