Du kan nu gøre det i Mongo 3.2 ved hjælp af $lookup
$lookup
tager fire argumenter
from
:Specificerer samlingen i den samme database, der skal udføres sammenkædningen med. Fra-samlingen kan ikke sønderdeles.
localField
:Specificerer feltet fra dokumentinput til $opslagsstadiet. $lookup udfører en lighedsmatch på localField til fremmedField fra dokumenterne fra fra-samlingen.
foreignField
:Angiver feltet fra dokumenterne i fra-samlingen.
as
:Angiver navnet på det nye matrixfelt, der skal tilføjes til inputdokumenterne. Det nye array-felt indeholder de matchende dokumenter fra fra-samlingen.
db.Foo.aggregate(
{$unwind: "$bars"},
{$lookup: {
from:"bar",
localField: "bars",
foreignField: "_id",
as: "bar"
}},
{$match: {
"bar.testprop": true
}}
)