MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie werden die Unterdokumente ausgefüllt, die nach der aggregierten Suche in Mongodb zurückgegeben werden?

Versuchen Sie Folgendes:

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"
        }
    }
]);