sql >> Databáze >  >> NoSQL >> MongoDB

dotaz mongoose/mongodb vícenásobné řazení

Musíte zadat obě sort termíny do jednoho objektu:

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

Stojí za zmínku, že standard ECMA-262, na kterém je založen Node.js, nespecifikuje, že je zachováno pořadí vlastností objektu a je to pouze de facto standard odpovídající pořadí vložení. Chcete-li odstranit jakékoli pochybnosti, můžete místo toho použít pole:

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



  1. (uzel:3341) Upozornění na ukončení podpory:Mongoose:mpromise

  2. MongoDB $isoWeekYear

  3. Sidekiq nenachází záznamy pro Rails Active Job

  4. Monitoring &Ops Management MongoDB 4.0 s ClusterControl