MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Comment utiliser la mangouste distincte, sauter et limiter ensemble

Vous ne faites pas ça. .distinct() est une méthode qui renvoie un "tableau", et donc vous ne pouvez pas modifier quelque chose qui n'est pas un "Curseur" avec des "modificateurs de curseur" comme .limit() et .skip() .

Ce que vous voulez, c'est le .aggregate() méthode. Bien plus qu'une simple addition :

MyModel.aggregate(
    [
        { "$group": { "_id": "$blaster" } },
        { "$skip": ( page-1 ) * 15 },
        { "$limit": 15 }
    ],
    function(err,results) {
       // results skipped and limited in here
    }
);

Le cadre d'agrégation offre un autre moyen d'obtenir des résultats "distincts". Mais de manière plus souple. Voir les opérateurs pour $group , $skip et $limit .