Mongodb 如何使用聚合查找集合中的重复项

Mongodb 如何使用聚合查找集合中的重复项,mongodb,Mongodb,我希望使用聚合通过“名称”字段查找此集合中的所有重复条目。例如,“foo”出现两次,“bar”出现三次。您可以在中使用stage 您可以按名称和计数分组。然后使用大于1的计数进行筛选 输出: db.collection.aggregate([ { $group: { _id: "$name", count: { $sum: 1 } } }, { $match:{count:{$gt:1}} }

我希望使用聚合通过“名称”字段查找此集合中的所有重复条目。例如,“foo”出现两次,“bar”出现三次。

您可以在中使用stage

您可以按名称和计数分组。然后使用大于1的计数进行筛选

输出:

db.collection.aggregate([
    {
      $group: {
        _id: "$name",
        count: { $sum: 1 }
       }
     },
    {
     $match:{count:{$gt:1}}
     }
   ])
db.collection.aggregate([{
  $group: {
    _id: "$name",
    count: { $sum: 1 },
    name: { $first: "$name" }
  }
}])
db.collection.aggregate([
    {
      $group: {
        _id: "$name",
        count: { $sum: 1 }
       }
     },
    {
     $match:{count:{$gt:1}}
     }
   ])
{ "_id" : "foo", "count":2}
{ "_id" : "bar", "count":3}