sql >> Database >  >> NoSQL >> MongoDB

Hoe vertel je Mongo een verzameling te sorteren voordat de resultaten worden beperkt?

Het probleem is dat je moet sorteren op date in plaats van $date .

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

Mongo past de sortering toe voordat de resultaten worden beperkt, ongeacht de volgorde die u sort aanroept en limit op de cursor.

Bewijs in documenten:link

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

De twee verklaringen zijn gelijkwaardig; d.w.z. de volgorde waarin u de limiet() en de sort()-methoden aan elkaar koppelt, is niet significant. Beide verklaringen retourneren de eerste vijf documenten, zoals bepaald door de oplopende sorteervolgorde op 'naam'.



  1. Hoe ongebruikte indexen in MongoDB te vinden?

  2. NodeJS en MongoDB FindAndModify() moeten worden verwijderd of bijgewerkt

  3. hoe je onderliggende objecten in mongodb kunt opvragen

  4. Hoe definieer ik methoden in een Mongoose-model?