Агрегатный метод в MongoDB Compass? - PullRequest
0 голосов
/ 08 июня 2018

, как указано в названии, у меня возникли некоторые проблемы при обращении к MongoDB Compass с использованием совокупного метода.У меня есть коллекция документов в этой форме:

{"Array":[{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},{"field":"val","field2":"val2"},...]}

с использованием оболочки mongo или программного обеспечения 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" и считают их.Это прекрасно работает, но я не знаю, как сделать то же самое в MongoDB Compass enter image description here

в панели запросов у меня есть «фильтр», «проект» и «сортировка»и я могу делать обычные запросы, но я не знаю, как использовать агрегатный метод.Спасибо

1 Ответ

0 голосов
/ 10 августа 2019

Вы просматриваете вкладку Документы , доступ к которой ограничен для запросов документов.

Посмотрите на вторую вкладку под названием Агрегирование , где вы можете выполнить агрегацию.трубопроводы, как обычно.

Для получения дополнительной информации, пожалуйста, посетите документацию Aggregation Pipeline Builder .

...