Ответ 1
В stackoverflow есть еще один связанный с этим вопрос: mongodb: как получить последние N записей?
Надеюсь, это поможет вам.
Как я могу получить последние 50 документов в mongoDB?
У меня есть коллекция, созданная
db.createCollection("collection",{capped:true, size:300000});
из этой "коллекции"
Я хотел бы иметь последние 50 документов вместо первых 50 документов.
Я знаю, что я могу получить первые 50 документов, используя
db.collection.find().limit(50);
Но как я могу получить последние 50 документов?
Можно ли это сделать просто с помощью API MongoDB или я должен реализовать это с помощью программирования?
В stackoverflow есть еще один связанный с этим вопрос: mongodb: как получить последние N записей?
Надеюсь, это поможет вам.
это должно сделать следующее:
db.collection.find().sort({$natural: -1}).limit(50);
Последние N добавленных записей, от менее недавних до самых последних, можно увидеть с помощью этого запроса:
db.collection.find().skip(db.collection.count() - N)
В вашем случае 50
db.collection.find().skip(db.collection.count() - 50)
Вам нужны последние 50 документов из коллекции Монго, так что это запрос
db.collection('collectionName').find().sort({$natural: -1}).limit(50);
// sort({$natural: -1}) for the last fields (desecnding)
// limit(50) because you need only 50 fields