是什么之间的区别cursor.count()
和cursor.size()
MongoDB的方法DBCursor
?
Answer 1:
从MongoDB的Java驱动程序的Javadoc中 ,它说:
DBCursor.count() :计算与查询匹配的对象的数量。 这不采取限制/跳过考虑。
DBCursor.size() :计算与查询匹配的对象的数量。 这不采取限制/跳过考虑。
Answer 2:
超过一个答案,我想指出的是,我们的团队面临“混合”这两问题。
我们有这样的事情:
DBCursor cursor = collection.find(query).limit(batchSize);
logger.info("{} items found.", cursor.count());
while (cursor.hasNext()) {
...
}
原来,在调用后cursor.count()
方法,限制被忽略 (plase看看这个其它问题),我们打算知道有多少项目是由查询,所以我们应该叫返回cursor.size()
方法来代替,因为调用count
一个确实具有不希望抵押品效果。
我希望这可帮助其他人,因为它不是那么容易找到我们所面临的问题的根源。
文章来源: Difference between cursor.count() and cursor.size() in MongoDB