mongoose/mongodb query multiple sort

You need to put both sort terms into one object:

exports.getMinCuttingTime = function(number, callback){ 
    ProjectModel.find()
        .sort({totalCuttingTime: 1, favoriteCount: -1})
        .select({_id: 1})
        .limit(number)
        .exec(
            function(err, projects) {
                callback(null, projects)
            }
        );
};

It’s worth noting that the ECMA-262 standard on which Node.js is based doesn’t specify that an object’s property order is maintained, and it’s only a de facto standard to match insertion order. To eliminate any doubt, you can use an array instead:

.sort([['totalCuttingTime', 1], ['favoriteCount', -1]])

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)