首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Pymongo一次性获得文件数量和结果?

Pymongo一次性获得文件数量和结果?
EN

Stack Overflow用户
提问于 2019-03-05 05:58:42
回答 1查看 0关注 0票数 0

有没有办法从find(光标)的结果中获取计数?我想要最小化数据库访问。我可以获取查询结果并一次性计算吗?

代码语言:javascript
复制
res_docs = db.sensorDataCol.find({'sensorId': 123})
print(res_docs.count()) ?
print(len(res_docs)) ?
print(len(res_docs.items())) ?
.....

我知道我能做到:

代码语言:javascript
复制
res_count = db.sensorDataCol.countDocuments({'sensorId': 123})

或者:

代码语言:javascript
复制
res_docs = db.sensorDataCol.find({'sensorId': 123})
doc_count = 0
for doc in res_docs:
    doc_count += 1

但是有更简洁的方式吗?

EN

回答 1

Stack Overflow用户

发布于 2019-03-05 15:48:04

这并不困难:

代码语言:javascript
复制
cursor = db.sensorDataCol.find({'sensorId': 123})
res_docs = list(cursor)  # list of dicts
count1 = len(res_docs)  # simpliest way
count2 = cursor.count()  # alternative way, count1 == count2

这就是如何获得最小数据库访问的文档列表和文档计数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100006424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档