Je kunt het met zoiets doen in MongoDB 3.2, ervan uitgaande dat de verzameling met de details video.details
is en het veld waar u zich bij blijft voegen is _id
:
[
{
$unwind:"$videos"
},
{
$lookup:{
from:"video.details",
localField:"videos.videoId",
foreignField:"_id",
as:"details"
}
},
{
$group:{
_id:"$_id",
name:{
$first:"$name"
},
videos:{
$push:{
videoId:"$videos.videoId",
videoDetails:"$details"
}
}
}
}
]
Dus eigenlijk doe je je zoekopdracht, maar later in een $ groepsfase bouw je de uitvoer zoals jij dat wilt. je hebt misschien de eerste $unwind-fase niet nodig als je MongoDB 3.3.4 of hoger gebruikt (voorheen was $ opzoeken op arrays niet toegestaan).