如果密钥==无或密钥不存在,我想使用条件查找文档。像这样:
myDoc = self.request.root.db.myDocs.find_one({
'$or': [
{'myKey' : $doesNotExist } ,
{'myKey' : None }
]
})
我也希望能够通过这样的缺失键找到一个文档:
myDoc = self.request.root.db.myDocs.find_one( {'myKey' : $doesNotExist } )
我该如何做到这一点?
答案 0 :(得分:24)
对于“if key exists”检查,使用.find()
的{{3}}是significantly faster而不是find_one()
。
单个文档: cursor = db.myDocs.find({"mykey": {"$exists": True}}).limit(1)
多个文档: cursor = db.myDocs.find({"mykey": {"$exists": True}})
if cursor.count() > 0:
keyExists = True
else:
keyExists = False
答案 1 :(得分:15)