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

Problema di duplicazione di Mongo DB durante l'utilizzo dell'ordinamento con limite e salta nell'aggregazione

In base ai dati della tua raccolta, stai ordinando per chiave con valori comuni.

Nella prima aggregazione di aggregazione che stai usando (skip,limit) => (0,4) in questo caso mongo sta ordinando i documenti da tutti i documenti e il risultato è ordinato.

Nella seconda aggregazione stai usando di nuovo (skip,limit) => (4,4) in questo caso mongo sta ordinando i documenti da tutti i documenti in cui i documenti possono essere duplicati pur avendo lo stesso valore in chiave.

Quindi, dopo aver ordinato i tuoi dati, dovresti ordinare i tuoi dati con qualsiasi chiave univoca (o "_id" o "nome") come desideri Nota:la chiave dovrebbe essere univoca

qualcosa come sotto

db.testing.aggregate([
    {
        $sort : { 
          "percentage": -1,
          "_id" : 1
        },
    },
    {
        $skip : 0
    },
    {
        $limit:4
    }
]);