我正在使用pymongo从MongoDB插入和检索数据。这两个操作可以同时执行。问题是当我在pymongo中rows = db.<collection>.find()
时,rows.count()
每次都返回不同的响应(因为数据的插入也是同时进行的)。有没有什么方法可以限制MongoDB只返回执行find()
语句时出现的行?我尝试将snapshot=True
添加到find()
,但问题仍然存在。
答案 0 :(得分:1)
db.<collection>.find().count()
会对mongodb进行额外的(runCommand
count
)调用。
如何简单地使用光标长度,如下所示:
rows = db.<collection>.find()
print len(list(rows))
请注意,您不能只使用len(rows)
。
希望有所帮助。