MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come restituire un documento nidificato in un array

Devi eseguire $unwind per ottenere un singolo documento da services e $replaceRoot per promuoverlo a livello di root:

db.guilds.aggregate([
    {
        $match: { user_id: 123, "services.name": "test" }
    },
    {
        $unwind: "$services"
    },
    {
        $match: { "services.name": "test" }
    },
    {
        $replaceRoot: { newRoot: "$services" }
    }
])