我想在查找基于lastUpdated字段的sortaing的帮助下返回查询结果.
目前我见过两种方式
第一种方法
BasicDBObject query = new BasicDBObject();
query.put("updated_at","-1");
query.put(MONGO_ATTR_SYMBOL, "" + symbol);
DBCursor cursor = DBcollection.find(query).sort(query);
Run Code Online (Sandbox Code Playgroud)
第二种方法
DBCursor cursor = DBcollection.find(query,new BasicDBObject("sort", new BasicDBObject("lastUpdated ", -1)));
Run Code Online (Sandbox Code Playgroud)
什么是与任何想法一起工作的最佳选择?
小智 12
如果您查看Java Driver API,方法find需要两个参数,即查询和将返回的字段.
想要对结果进行排序后,请使用传统的find方法并对DBCursor进行排序.
DBCursor cursor = DBCollection.find(query);
cursor.sort(new BasicDBObject("lastUpdated ", -1));
Run Code Online (Sandbox Code Playgroud)
请记住,DBCursor对象做一个懒惰取到数据库中,这样你就可以使用排序,限制或无开销跳过.
| 归档时间: |
|
| 查看次数: |
21609 次 |
| 最近记录: |