mongo count()和$ group结果的汇总是不同的

时间:2017-01-19 08:35:37

标签: mongodb

我有一个mongo集合。我跑的时候

> db.coll.count()
6570
>> db.coll.aggregate({ "$group" : { "_id": null, "total": { $sum : 1 } }} )
{ "_id" : null, "total" : 6575 }

为什么结果不同?

1 个答案:

答案 0 :(得分:-2)

为什么不深入挖掘发现不一致

db.coll.find({},{_id:1}).toArray().length;

db.coll.aggregate({ "$group" : { "_id": null, "ids": { $push : $_id }}},{$project : {_id:0, count : {$size:"$ids"}} )

这样你就可以看出是否有一些额外的_ids。如果两者在ID方面都是一致的。