sql >> Databasteknik >  >> NoSQL >> MongoDB

Fältet $name måste vara ett ackumulatorobjekt

Det finns vissa aggregeringsoperatorer som endast kan användas i $group aggregering och namnges som $group accumulators

Precis som du använde $sum här måste du använda för name nyckel också

{ "$group": {
  "_id": "$_id",
  "name": { "$first": "$name" },  //$first accumulator
  "count": { "$sum": 1 },  //$sum accumulator
  "totalValue": { "$sum": "$value" }  //$sum accumulator
}}

Accumulator är som en array av element dess ackumuleras som Array.$first -> ger det första namnet som går i gruppen av namn

Exempel:så om du har $_id samma men olika namn ["Darik","John"] anger $first kommer att ge Darik &på liknande sätt $last kommer att ge John



  1. Kontrollera om varje element i array matchar tillståndet

  2. Mongo DB-fråga i java

  3. redis scan returnerar tomma resultat men markören inte är noll

  4. Meteor med Azure MongoDB