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

Агрегирана вложена група Mongodb

Използвайте тази команда, тя ще работи за вашия примерен случай, надявам се, че ще реши проблема ви,

db.testCollection.aggregate([{
    $group: {
        _id: {
            ASSIGN_ID: "$ASSIGN_ID",
            STATUS: "$STATUS"
        },
        count: {
            "$sum": 1
        }
    }
}, {
    $group: {
        _id: "$_id.ASSIGN_ID",
        STATUS_GROUP: {
            $push: {
                STATUS: "$_id.STATUS",
                count: "$count"
            }
        }
    }
}])

изход в shell :

{
    "_id": "583f84bce58725f76b322398",
    "STATUS_GROUP": [{
        "STATUS": 3,
        "count": 1
    }, {
        "STATUS": 4,
        "count": 2
    }, {
        "STATUS": 1,
        "count": 1
    }]
}, {
    "_id": "583f84bce58725f76b322311",
    "STATUS_GROUP": [{
        "STATUS": 3,
        "count": 1
    }, {
        "STATUS": 1,
        "count": 1
    }]
}, {
    "_id": "583f84bce58725f76b322322",
    "STATUS_GROUP": [{
        "STATUS": 1,
        "count": 1
    }, {
        "STATUS": 4,
        "count": 1
    }]
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Задаването на TTL не работи в Mongodb c#

  2. Вероятност за сблъсък на ObjectId срещу UUID в голяма разпределена система

  3. Google Cloud Functions свързва ли се отново с моя MongoDB клиент за всяка HTTP заявка?

  4. Как да използвам $elemMatch върху проекцията на агрегата?

  5. Пропуснете и ограничете за пагиниране за агрегат Mongo