因为DBCollection#distinct()
返回类型 List,而不是类型 DBCursor,如 DBCollection#find()
。
不幸的是,我的distinct的结果太大了。所以我需要一种好方法来循环查询的不同值。
感谢您的帮助!
最佳答案
驱动程序不提供像通过光标那样获取不同对象的设施,我们可以这样做,但从性能角度来看,我不知道哪个是正确的解决方案。
DBCollection coll = db.getCollection("your_collection");
List<String> lst=coll.distinct("your_property");
for(String l:lst){
BasicDBObject query = new BasicDBObject("your_property", l);
DBObject object=coll.findOne(query);
System.out.println(object);
}
关于java - MongoDB Java驱动程序: distinct and iterative,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28760747/