sql >> Databáze >  >> NoSQL >> MongoDB

Jak řeknete Mongo, aby třídil sbírku, než omezíte výsledky?

Problém je v tom, že musíte třídit podle date místo $date .

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

Mongo použije řazení před omezením výsledků bez ohledu na pořadí, které nazýváte sort a limit na kurzor.

Důkaz v dokumentech:odkaz

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

Tyto dva výroky jsou ekvivalentní; tj. pořadí, ve kterém řetězíte metody limit() a sort() není důležité. Oba příkazy vrátí prvních pět dokumentů, jak je určeno vzestupným řazením na ‚jméno‘.



  1. Mongo najít duplikáty pro záznamy pro dvě nebo více polí

  2. mangoose jedinečný:pravda, nefunguje

  3. Chyba:Žádná podpora unixového socketu v systému Windows připojujícím mongodb

  4. Měl by být `StackExchange.Redis.ConnectionMultiplexer` `AddSingleton` nebo `AddScope` ve vkládání závislostí .NET Core?