2017-06-02 135 views
-1

我正在学习在Java mongoldb,我想获得最后插入的文件,搜索谷歌我已经找到了这个可以得到最后插入:MongoDB为什么id是-1?

 BasicDBObject sortObject = new BasicDBObject().append("_id", -1); 
    FindIterable<Document> cur = collection.find().sort(sortObject).limit(1); 
    Document p = cur.first(); 
    System.out.println(p.get("name")); 

和它的作品! :) buuuut为什么应该是ID -1?

+0

这不是“分配值”。它**是**“指定排序顺序”。事实上下降。阅读文档['.sort()'](https://docs.mongodb.com/manual/reference/method/cursor.sort/)。这通常是一个更好的开始,一般来说你如何学习东西。 –

回答

0

ID -1,并不意味着id = -1,它只是意味着它会给你在DB中插入的最后结果。 如果您希望插入最后20个项目,则可以将限制(20)添加到您的查询中。

collection.find().sort(sortObject).limit(20); 

欲了解更多信息,你可能看看这个answer