Pymongo:如何检查字段是否存在

Jez*_*z D 4 python nosql pymongo

我正在使用 PyMongo 从我的集合中获取文档。一切正常,直到我尝试将结果限制为仅在选择某个集合的情况下获取存在特定字段的文档。这是我的代码

query["is_approved"] = None
if source_collection == "collection-name":
    query["field_to_check_for"]['exists'] = True


sort = [("created_date", -1)]
cursor = c.find(query, sort=sort).limit(20)
Run Code Online (Sandbox Code Playgroud)

上面的代码在行上抛出 400 'bad request' 错误

查询[“field_to_check_for”]['exists'] = True

我也试过使用

查询[“field_to_check_for”] =“存在”

但这会返回一个空结果

小智 9

你的查询字典格式错误,请试试这个:

query = {"field_to_check_for": {"$exists": True}}
cursor = db.collection-name.find(query)  
Run Code Online (Sandbox Code Playgroud)

  • 它是 $exists 不是 $exist (4认同)