sql >> Database >  >> NoSQL >> MongoDB

Kan ik eenvoudig alle velden van een subdocument retourneren als velden in het document op het hoogste niveau met behulp van het aggregatieraamwerk?

U kunt $replaceRoot gebruiken aggregatie-operator sinds 3.4:

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

Levert output zoals verwacht:

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


  1. Sla afbeeldingen op in Mongodb en serveer ze met Nodejs

  2. ng-if vaker gebeld worden dan zou moeten

  3. MongoError oplossen:kan een sessie die is beëindigd niet gebruiken

  4. Mongoose deelnamegegevens