MongoDB聚合,计算数组中的每个项并按项分组

MongoDB聚合,计算数组中的每个项并按项分组,mongodb,aggregation-framework,Mongodb,Aggregation Framework,在这里,我有一个类似这样的重复项目数组 [ "gg",, “bb”, “dd”, “cc”, "会",, "aa",, “cc”, "gg",, “bb”, “dd”, “cc”, “bb”, “dd”, "会",, "aa",, ] 我愿意回报的是这样的 { ‘gg’:2, “bb”:3, “dd”:3, “抄送”:2, ll:2, "aa":2,, } 可以用MongoDB聚合完成吗???感谢所有帮助使用和作为聚合pipiline的阶段: 查询: 结果: db.collection.aggr

在这里,我有一个类似这样的重复项目数组

[ "gg",, “bb”, “dd”, “cc”, "会",, "aa",, “cc”, "gg",, “bb”, “dd”, “cc”, “bb”, “dd”, "会",, "aa",, ] 我愿意回报的是这样的

{ ‘gg’:2, “bb”:3, “dd”:3, “抄送”:2, ll:2, "aa":2,, } 可以用MongoDB聚合完成吗???感谢所有帮助

使用和作为聚合pipiline的阶段: 查询:

结果:

db.collection.aggregate([
      {
        $unwind: "$items"
      },
      {
        $group: {
          _id: "$items",
          count: {
            $sum: 1
          }
        }
      }
    ])
{
    "_id": "ll",
    "count": 2
  },
  {
    "_id": "gg",
    "count": 2
  },
  {
    "_id": "bb",
    "count": 3
  },
  {
    "_id": "cc",
    "count": 3
  },
  {
    "_id": "aa",
    "count": 2
  },
  {
    "_id": "dd",
    "count": 3
  }