sql >> Database >  >> NoSQL >> MongoDB

Hoe vul je de subdocumenten in die zijn geretourneerd na geaggregeerde zoekopdracht in mongodb?

Probeer dit:

db.A.aggregate([
    {
        $lookup: {
            from: "B",
            let: { refToA: "$_id" },
            pipeline: [
                {
                    $match: {
                        $expr: { $eq: ["$refToA", "$$refToA"] }
                    }
                },
                {
                    $lookup: {
                        from: "C",
                        localField: "refToCArray",
                        foreignField: "_id",
                        as: "refToCArray"
                    }
                }
            ],
            as: "BCollection"
        }
    }
]);



  1. Kunt u machtigingen op collectieniveau hebben in MongoDB?

  2. Object met ObjectId verwijderen uit array in Mongoose/MongoDB

  3. Een array-element voorwaardelijk evalueren om te retourneren

  4. Samengevoegde query met waar voorwaarde