不同项目的计数 mongodb

Count of distinct items mongodb

给定 MongoDB 中的以下文档结构:

{ "_id" : ObjectId("56f00f745b4124b8b6b6f143"), "item" : "A" }
{ "_id" : ObjectId("56f00f8a5b4124b8b6b6f144"), "item" : "b" }
{ "_id" : ObjectId("56f00f935b4124b8b6b6f145"), "item" : "A" }

我正在尝试查找 distinct 这些项的数量。 运行

db.test.distinct('item')

结果 [ "A", "b" ]。如何输出每个 dinstinct 项目的 count?示例输出为 [ ["A",2] , ["b",1] ]

您可以使用 aggregation framework 来完成此操作。按 "item" 分组然后计数:

db.test.aggregate([{$group: {_id: "$item", count: {$sum: 1}}}])