MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come utilizzare la mangusta distinta, saltare e limitare insieme

Non lo fai. .distinct() è un metodo che restituisce un "array", e quindi non puoi modificare qualcosa che non sia un "Cursore" con "modificatori del cursore" come .limit() e .skip() .

Quello che vuoi è il .aggregate() metodo. Molto più che sommare le cose:

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

Il quadro di aggregazione fornisce un altro modo per ottenere risultati "distinti". Ma in modo più flessibile. Consulta gli operatori per $group , $skip e $limit .