如何在mongoDB中获取最近50个文档?
我有一个由
制作的集合db.createCollection("collection",{capped:true, size:300000});
来自这个“集合”
我想拥有最后50份文件而不是前50份文件。
我知道我可以使用
获得前50个文档db.collection.find().limit(50);
但我怎样才能获得最近50份文件?
这可以通过MongoDB API简单地完成,还是应该通过编程来实现?
答案 0 :(得分:22)
这应该做的事情:
db.collection.find().sort({$natural: -1}).limit(50);
答案 1 :(得分:1)
最近N个添加的记录,从最近到最近,可以通过此查询看到:
db.collection.find().skip(db.collection.count() - N)
在你的情况下50
db.collection.find().skip(db.collection.count() - 50)
答案 2 :(得分:0)
您需要mongo集合中的最后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