MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Полето $name трябва да бъде акумулиращ обект

Има някои оператори за агрегиране, които могат да се използват само в $group агрегиране и именуван като $group accumulators

Точно както използвахте $sum тук трябва да използвате за name ключ също

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

Акумулаторът е като масив от елементи, който се натрупва като масив.$first -> дава 1-во име, което влиза в групата имена

Пример:ако имате $_id същото, но различно име ["Darik","John"] като посочите $first ще даде на Дарик и по подобен начин $last ще даде Джон



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Pymongo:insert_many + уникален индекс

  2. Mongo преобразува всички числови полета, които се съхраняват като низ

  3. Не може да се свърже с mongoDB с Nodejs, използвайки Docker-compose

  4. Търсене в MongoDB, когато чуждото поле е масив от обекти

  5. В MongoShell:Не мога да се свържа с моята колекция, db.collection_name връща NaN