我正在进行一个MongoDB查询,在这里我需要循环我的结果并计算结果的len,以查看是否返回了一个空结果
以下是我尝试过的:
Record = db.mycol.find({"datetimeraw": dt.now().strftime('%Y%m%d%H%M')})
RecordLen = Record.count()
print('LEN IS':RecordLen)
for x in Record:
print(x)
这段代码可以工作,但是当我使用它时,我得到了以下错误:DeprecationWarning: count is deprecated. Use Collection.count_documents instead.
问题是我不能使用count_documents()
,因为它将返回一个整数,而不是我可以循环的结果列表;在这种情况下,我必须进行两个查询:一个用于计数,另一个用于检索结果,我希望避免这种情况。有没有办法做到这一点,或者我只能使用一个非包装的功能
在MongoDB中
.find()
将始终返回一个游标,该游标可以是空的[]
或一个文档数组/dicts[{},{}]
As.count()可用三种方式使用:
因此,前两个选项类似于countdocuments()和estimateddocumentcount()(返回一个数字),但当您希望返回文档并获得类似于cursor.count()的游标计数时,可以在代码中使用
len()
方法:len(list(results))
相关问题 更多 >
编程相关推荐