Ich habe zwei Sammlungen und ich habe eine Sammlung von Daten in MongoDBmongodb Aggregat Lookup mehrere ObjectId in Objekt
db.user.insert({"_id" : ObjectId("585d627fe4ff58cb1c456780"), "name":"Alfred"});
db.user.insert({"_id" : ObjectId("585d60b5e4ff58cb1c45677f"), "name":"Bruce"});
db.role.insert({"_id" : ObjectId("585d5f7cdb83cb696b82f2cf"),"status" : "admin"});
db.data.insert(
"security": [
{"idUser" : ObjectId("585d627fe4ff58cb1c456780"), "idRole" : ObjectId("585d5f7cdb83cb696b82f2cf")},
{"idUser" : ObjectId("585d60b5e4ff58cb1c45677f"), "idRole" : ObjectId("585d5f7cdb83cb696b82f2cf") }]);
Wenn ich diese Bedingung ausführen das Array
db.data.aggregate([
{ $lookup: {from: "user", localField: "user.idUser", foreignField: "_id", as: "user_admin"} },
{$unwind:"$user_admin"},
]);
leer zurück Ich wollte die bringen zwei ausgefüllt Felder mit den Attributen der einzelnen Objekte im Array, bin ich sehr dankbar, jemand, der mir hilft
Diese korrekte db.data.aggregate ([ {$ Lookup: {aus: "user", localField: "security.idUser", foreignField: "_id", wie: "user_admin"}}, {$ unwind: "$ user_admin"}, ]); – user2350939