假設存在一些文檔:查詢MongoDB的文檔與字典場不存在或存在空
# No 'value'
{
'name': 'T1',
}
# 'value' is a non-empty dict
{
'name': 'T1',
'value': {'a':'A', 'b':'B'}
}
# 'value' is a empty dict
{
'name': 'T1',
'value' : {}
}
我想查詢文檔與value
不存在或存在value
並且是空的。我嘗試下面的方法並不起作用:
cursor = collection.find({
'name': {"$exists": 1},
'value': {"$or": [{"$exists":0}, {"$eq": {}}]}
})
錯誤:
pymongo.errors.OperationFailure: unknown operator: $or
因爲$或should.be頂級鍵,而不是場內。請參閱文檔; https://docs.mongodb.com/manual/reference/operator/query/or/ –
所以我怎樣才能達到我想要的,如果把它放在頂層,如何處理其他查詢參數? – Cl0udSt0ne