MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment regrouper des documents avec un champ spécifique dans l'agrégation de mongodb

Vous devez utiliser la requête suivante :

db.collection.aggregate({
    $group: {
    _id: "$threadId",
    "records": {
        $push: "$$ROOT"
    },
    "count": {
        $sum: 1
    }
    }
}).pretty()

Si vous souhaitez ajouter match critères puis utilisez la requête suivante -

db.collection.aggregate({
    $match: {
    "poiId": "538318500cf2e33469a2d819" //can change match parameters
    }
}, {
    $group: {
    _id: "$threadId",
    "records": {
        $push: "$$ROOT"
    },
    "count": {
        $sum: 1
    }
    }
}).pretty()