首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用pymongo的总计数记录

用pymongo的总计数记录
EN

Stack Overflow用户
提问于 2017-04-10 12:09:26
回答 1查看 1.1K关注 0票数 0

我想数一下与pymongo相匹配的记录。我查阅了文档:https://docs.mongodb.com/manual/reference/operator/aggregation/group/#group-by-month-day-and-year

我知道我应该做这样的事:

代码语言:javascript
复制
db.foo_baz.aggregate([{'$group': {'_id': '$baz_id', 'count': {'$sum': 1}}}])

但是,我得到了这个错误:

代码语言:javascript
复制
      File "/usr/lib/python3.6/site-packages/mongomock/collection.py", line 1531, in aggregate
    from_field = key.replace('$', '')
AttributeError: 'int' object has no attribute 'replace'

添加评论

我认为pymongo会将其评估为mongodb声明:

代码语言:javascript
复制
 db.foo_baz.aggregate({{$group: {_id: '$baz_id', count: {$sum: 1}}}])

这给了我从mongodb控制台运行时的预期结果,在我的例子中是:{"_id" : NumberInt("1234"), "count" : 1}

我做错什么了?我使用pymongo3.4和python3.6以及mongomock 3.7。

我还尝试用不崩溃的1替换"1",但结果不正确:({"_id" : NumberInt("1234"), "count" : NumberInt("0")})

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-10 12:19:40

很明显,这是mongomock中的一个bug,在升级到3.8之后,我得到了预期的行为。

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

https://stackoverflow.com/questions/43322788

复制
相关文章

相似问题

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