7

如标题中所述,我在使用聚合方法从 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 中做同样的事情 在此处输入图像描述

在查询栏中,我有“过滤器”、“项目”和“排序”,我可以做通常的查询,但我不知道如何使用聚合方法。谢谢

4

1 回答 1

5

您正在查看限制用于查询文档的文档选项卡。

看看第二个名为Aggregations的选项卡,您可以像往常一样在其中执行聚合管道。

有关详细信息,请访问聚合管道生成器文档。

于 2019-08-10T18:52:14.703 回答