【发布时间】:2017-12-09 19:27:49
【问题描述】:
我是 Mongo Java 驱动程序的新手。我正在使用 3.4 Mongo Java 驱动程序。我正在尝试从集合中检索随机文档。
我搜索发现我必须使用$sample 来查找随机文档,但是当我尝试实现时,我无法检索它。
下面是我试过的代码。
MongoClient mongo = new MongoClient( "localhost" , 27017 );
MongoDatabase database = mongo.getDatabase("car_local");
MongoCollection<Document> collection = database.getCollection("assetSchemeSet");
collection.aggregate([ { $sample: { size: 1 } } ]);
如果有人可以帮助我,那将是一个很大的帮助。
【问题讨论】:
-
您有什么错误或其他信息?这是 $sample 的正确语法。您只是没有返回任何文档吗?您确定 car_local 和 assetsSchemeSet 的拼写/存在吗?
-
我收到编译错误 - “MongoCollection
类型的方法聚合(List extends Bson>)不适用于参数 ()”。当我执行 collection.count() 时,我可以看到计数 -
您实际上是在混合 Java 和 Javascript 吗......?我认为 aggregation() 调用代表了您在 Java 中编码的内容。
标签: java mongodb mongodb-query aggregation-framework mongodb-java