MongoDB:重复字段计数,mapReduce vs python循环



我有一个集合,我想找到一个给定字段的所有重复项。从Mongo文档和其他答案来看,大多数人似乎都建议使用mapReduce。我想知道从python迭代游标而不是使用map reduce的缺点是什么。

似乎mapreduce也必须遍历对象。

在这里添加解决方案,这样可能会对某人有所帮助。

我运行下面的查询来获得所有出现不止一次的条形码的列表。$group管道对出现次数进行计数,$match管道对count大于1的管道进行过滤。

db.sandbox.aggregate([
                      {$group: {_id: '$barcode',
                                count: {$sum: 1}
                               }
                      },
                      {$match: {count: {$gt:1} } }
                     ])

聚合框架将帮助您查找重复项。这比抓取记录和循环要好。

最新更新