sql >> Database >  >> NoSQL >> MongoDB

Mongoose-somvelden uit ingevulde documenten

U kunt onderstaande aggregatie proberen in 3.4.

$lookup om de punten op te zoeken voor voltooide tracks gevolgd door $addFields om een ​​scoreveld te retourneren waarin de punten worden opgeteld en $project met uitsluiting om het opzoekgegevensveld uit de reactie te verwijderen.

UserModel.aggregate([
  {"$lookup":{
    "from":"tracks", // name of the foreign collection
    "localField":"completedTracks",
    "foreignField":"_id",
    "as":"lookup-data"
  }},
  {"$addFields":{
    "score":{
      "$sum":"$lookup-data.points"
    }
  }},
  {"$project":{"lookup-data":0}}
])



  1. MongoDB - Projecteer alleen het overeenkomende element in een array

  2. verwijder mongodb php-stuurprogramma en installeer een andere versie

  3. MongoDb:mapVerminder het verzamelingsresultaat

  4. kan niet splitsen':slechte URI (is geen URI?):