Коллекция1
{
"_id" : ObjectId("5e33bfc008591b180967753a"),
"name" : "Name1",
"phone" : "12345678"
}
Коллекция2
{
"_id" : ObjectId("5e33bfe508591b180967753b"),
"iUserId" : ObjectId("5e33bfc008591b180967753a"),
"deviceId" : "6552gggh732",
"deviceName" : "samsung"
},
Объединить оба с lookup
const query = [
{
$lookup:
{
from: "Collection2",
localField: "_id",
foreignField: "iUserId",
as: "User"
}
},
{
$unwind: "$User"
}
];
db.Collection1.aggregate(query)
Результат: - Вы можете применить $project
, чтобы получить указанные c поля
{
"_id" : ObjectId("5e33bfc008591b180967753a"),
"name" : "Name1",
"phone" : "12345678",
"User" : {
"_id" : ObjectId("5e33bfe508591b180967753b"),
"iUserId" : ObjectId("5e33bfc008591b180967753a"),
"deviceId" : "6552gggh732",
"deviceName" : "samsung"
}
}