Mongodb,计算在集合中重复的字段中的所有对象

时间:2016-09-12 08:05:15

标签: mongodb meteor

我有一个名为tag的MongoDB集合,其中包含3个对象。这些对象包含_idmainname等字段,如下所示:

{
    "_id": "2ho8XgtfRvXpkg9g6",
    "main": "category",
    "name": ["elec", "toys", "flowers"]
}

我想计算name数组中的所有项目(这里有3个,其中4个,最后5个)。

如何使用以下查询计算所有3个标记集合中所有数组name中的所有项目?

Tags.find().count()

1 个答案:

答案 0 :(得分:0)

此聚合查询将为您提供名称数组的总和:

db.tag.aggregate([
    {"$unwind": "$name"},
    {"$group": {"_id": "$_id", "sum": { "$sum": 1}}},
    {"$group": {"_id": null, "total_sum": {"$sum": "$sum"}}}

])