PyMongo查询文档字段

时间:2015-07-01 16:56:06

标签: mongodb pymongo

在我的DynamoDB中,每个文档都有几个字段,其中一个字段是名为" engine"它包含几个包含多个字段的文档(所有引擎),如下图所示:

enter image description here

我想得到(引擎,定义)的所有夫妻,他们的定义日期大于特定日期。

我试过了:

cursor=collection.find(
                     {'engines': { "$elemMatch" : 
                                  { "definitions" : 
                                   {'$gt': startdate} } } }
                                    ,{'engines':{'$elemMatch':1}},{'engines':{'$elemMatch':{'definitions':1}}}  )

但我明白了: TypeError:skip必须是int

的实例

有人可以帮助查询吗?

1 个答案:

答案 0 :(得分:1)

您已将结束}混为一谈,最终将{'engines':{'$elemMatch':{'definitions':1}}}作为skip argument value传递。

我认为你的意思是:

cursor = collection.find(
    {
        'engines': {
            "$elemMatch": {
                "definitions": {
                    '$gt': startdate
                }
            }
        }
    },
    {
        'engines': {
            '$elemMatch': {
                'definitions': 1
            }
        }
    }
)