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

Posso restituire facilmente tutti i campi di un documento secondario come campi nel documento di livello superiore utilizzando il framework di aggregazione?

Puoi utilizzare $replaceRoot operatore di aggregazione dalla 3.4:

db.getCollection('sample').aggregate([
    {
        $replaceRoot: {newRoot: "$field1"}
    }
])

Fornisce l'output come previsto:

{
    "subfield" : {},
    "subfield2" : [],
    "subfield3" : 44,
    "subfield5" : "xyz"
}