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

mongo :le retour n'est pas égal à count()

Cela est dû à l'une des raisons suivantes, comme indiqué dans la documentation.

Sur un cluster partitionné, db.collection.count() peut entraîner un décompte inexact si des documents orphelins existent ou si une migration de bloc est en cours.

Pour éviter ces situations, sur un cluster partitionné, utilisez l'étape $group de db.collection.aggregate() méthode pour $sumer les documents. Par exemple, l'opération suivante compte les documents d'une collection :

Vous pouvez utiliser l'aggregate méthode pour le faire comme suggéré dans la documentation.

Scan.aggregate(
    {'$group': {
        '_id': None, 
        'count': {'$sum': 1}
    }}
)