MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

MongoDB tính tổng các mảng từ nhiều tài liệu trên cơ sở mỗi phần tử

Bạn có thể sử dụng bao gồmArrayIndex nếu bạn có MongoDb 3.2 hoặc mới hơn.

Sau đó, bạn nên thay đổi $unwind .

Mã của bạn phải như thế này:

.aggregate(
    [
      {
        "$unwind" :  { path: "$result", includeArrayIndex: "arrayIndex" }
      },
      {
        "$group": {
          "_id": "$arrayIndex",
          "results" : { "$sum" : "$result"}
          }
      },
      { 
        $sort: { "_id": 1}
      },
      {
        "$group":{
          "_id": null,
          "results":{"$push":"$results"}
          } 
      },
      {
        "$project": {"_id":0,"results":1}
      }
    ]
)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cách kết nối php7 với mongoDB

  2. Làm cách nào để chỉ định tiêu chí loại trừ tài liệu khỏi truy vấn?

  3. Truy vấn Mongodb:Bản ghi mới nhất theo ngày cho từng mục

  4. Làm thế nào để chuyển đổi trực tiếp Tài liệu MongoDB do Jackson JsonNode trong Java

  5. Lưu trữ ngày trong MongoDB mà không cần xem xét múi giờ