如标题中所述,我在使用聚合方法从 MongoDB Compass 查询时遇到了一些问题。我有一系列这种形式的文件:
{"Array":[{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},...]}
使用 mongo shell 或 Studio 3T 软件我用聚合方法查询它,下面一个例子:
db.collection.aggregate([
{ $match: {"Array.field": "val"}},
{ $unwind: "$Array"},
{ $match: {"Array.field": "val"}},
{ $group: {_id: null, count: {$sum:NumberInt(1)}, Array: {$push: "$Array"}}},
{ $project: {"N. Hits": "$count", Array:1}}
])
我在其中查找具有字段值 = "val" 的 Array 元素并对其进行计数。这工作得很好,但我不知道如何在 MongoDB Compass 中做同样的事情
在查询栏中,我有“过滤器”、“项目”和“排序”,我可以做通常的查询,但我不知道如何使用聚合方法。谢谢