Экспорт структуры агрегации mongodb в новую коллекцию Я хочу сохранить результат структуры агрегации в новую коллекцию. Я знаю, что это невозможно с каркасом в данный момент с самой командой. Есть ли обходной путь в оболочке? Ответ 1 Обновление: См. Сальвадор answer для более эффективного способа сделать это в MongoDB 2.6 +. Сохраните результат агрегирования в переменной и затем вставьте его свойство result в новую коллекцию: var result = db.foo.aggregate(...); db.bar.insert(result.result); Ответ 2 Начиная с Mongo 2.6.0, вы можете сделать это самостоятельно без каких-либо дополнительных манипуляций. db.<collection>.aggregate( [ { <operation> }, { <operation> }, ..., { $out : "<output-collection>" } ] ) Для более подробного примера просмотрите новый оператор агрегации $out. P.S., используя этот способ, вы не ограничены размером 16 МБ. Ответ 3 result.result больше не работает, попробуйте toArray(). var result = db.coll.aggregate(...); db.bar.insert(result.toArray());
Ответ 1 Обновление: См. Сальвадор answer для более эффективного способа сделать это в MongoDB 2.6 +. Сохраните результат агрегирования в переменной и затем вставьте его свойство result в новую коллекцию: var result = db.foo.aggregate(...); db.bar.insert(result.result);
Ответ 2 Начиная с Mongo 2.6.0, вы можете сделать это самостоятельно без каких-либо дополнительных манипуляций. db.<collection>.aggregate( [ { <operation> }, { <operation> }, ..., { $out : "<output-collection>" } ] ) Для более подробного примера просмотрите новый оператор агрегации $out. P.S., используя этот способ, вы не ограничены размером 16 МБ.
Ответ 3 result.result больше не работает, попробуйте toArray(). var result = db.coll.aggregate(...); db.bar.insert(result.toArray());