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

Come si dice a Mongo di ordinare una raccolta prima di limitare i risultati?

Il problema è che devi ordinare in base a date invece di $date .

myCollection.find().sort({date: 1}).limit(50, callback);

Mongo applica l'ordinamento prima di limitare i risultati indipendentemente dall'ordine che chiami sort e limit sul cursore.

Prova nei documenti:link

db.bios.find().sort( { name: 1 } ).limit( 5 )
db.bios.find().limit( 5 ).sort( { name: 1 } )

Le due affermazioni sono equivalenti; cioè l'ordine in cui si concatenano i metodi limit() e sort() non è significativo. Entrambe le affermazioni restituiscono i primi cinque documenti, come determinato dall'ordinamento ascendente su "nome".