mongodb - Node.js "ignore" $sort in a collection.aggregate query -



dumb question, i'm desperate already! need query:

db.clients.aggregate( {   $group: {       _id: '$enterprise',       lodging_days: { $sum: '$lodging_days' }   } }, {   $sort : {     lodging_days: -1   } }) 

and, if copy on mongo bash, returned this: bash return (sorry, can't upload images yet)
want!

but, when put query on node:

router.get('/query', function(req, res){   var db = req.db;   var clients=db.get('clients');    clients.aggregate(     {       $group: {         _id: '$enterprise',         lodging_days: { $sum: '$lodging_days' }       }     },     {       $sort: {         'lodging_days': -1       }     },     function(e, data){       res.json(data);     }   ); }); 

this "ignore" $sort , return me this: interface return
now, question are... why!? , can make fix it?

your need wrap pipeline array.

router.get('/query', function(req, res){   var db = req.db;   var clients=db.get('clients');    clients.aggregate([     {       $group: {         _id: '$enterprise',         lodging_days: { $sum: '$lodging_days' }       }     },     {       $sort: {         'lodging_days': -1       }     }],     function(e, data){       res.json(data);     }   ); }); 

Comments