MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie man Mongoose unterscheidet, überspringt und zusammen einschränkt

Das machst du nicht. .distinct() ist eine Methode, die ein "Array" zurückgibt, und daher können Sie etwas, das kein "Cursor" ist, nicht mit "Cursor-Modifikatoren" wie .limit() ändern und .skip() .

Was Sie wollen, ist der .aggregate() Methode. Viel mehr als nur zusammenzählen:

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

Das Aggregations-Framework bietet einen weiteren Weg, um "unterscheidbare" Ergebnisse zu erzielen. Aber flexibler. Siehe die Operatoren für $group , $skip und $limit .