sql >> Database >  >> NoSQL >> MongoDB

Geneste relaties MongoDb

U moet de eerste $lookup . aanpassen om een ​​pijplijn te gebruiken (beschikbaar vanaf v3.6)

[
    {
        "$match": {
            "id_site": 3,
            "id_parent": null,
            "id_class": null
        }
    },
    {
        "$lookup": {
            "from": "categories",
            "let": {
                "cid": "$_id"
            },
            "pipeline": [
                {
                    "$match": {
                        "$expr": { $eq: ["$id_parent", "$$cid"] }
                    }
                },
                {
                    "$lookup": {
                        "from": "media",
                        "localField": "id_media",
                        "foreignField": "_id",
                        "as": "Media"
                    }
                }
            ],
            "as": "Childs"
        }
    },
    {
        "$lookup": {
            "from": "media",
            "localField": "id_media",
            "foreignField": "_id",
            "as": "Media"
        }
    }
]



  1. Hoe het laatste push() ingesloten document terug te sturen

  2. MongoDB Query, vind alles op gebruikers-ID

  3. Invoegen in array van object MongoDB

  4. Node.JS wacht op instelling van variabele