Поскольку Mongodb построен на концепции Json Documents, вам может быть трудно это сделать.
Если ваша коллекция небольшая и производительность не представляет проблемы, вы можете использовать встроенную foreach
метод (или map ) для изменения каждого документа, возвращенного запросом find
, который может выполнить то, что вам нужно - , но для каждого результата будет выполняться клиентская сторона , который не будет очень производительным.Посмотрите на этот ответ для примера.
В противном случае вы могли бы попытаться сделать что-то подлое с mapReduce , но я думаю, что это толькоподдерживает возврат пар ключ-значение.
Я предполагаю, что вам лучше обработать это в своем собственном коде на клиенте, получив весь набор результатов запроса за одну операцию (в формате Json), а затем обработав документы для построения массиватебе нужно.