I want to save the result from an aggregation into a csv file.
Using the mongo cmd line tool I can do this to get the results I want:
db.compras.aggregate({ $group : { _id : "$data.proponente", total : { $sum : "$price" } }}
How would I translate this into a mongoexport command that saves results into a csv?
Slightly simpler option as of 2.6+ is to now add an $out
step to your aggregate to put the results into a collection:
db.collection.aggregate( [ { aggregation steps... }, { $out : "results" } ] )
Then just use mongoexport
as:
mongoexport -d database -c results -f field1,field2,etc --csv > results.csv
After that you might want to delete the temporary collection from the database so that it does not keep using unnecessary resources, and also to avoid confusion later, when you have forgotten why this collection exists in your database.
db.results.drop()