我想返回那些必须满足AND和OR条件的记录。 AND条件检查该值是否与集合外部的外部值匹配,然后检查它是否与OR条件中的一个或两个匹配。
这是我使用pymongo的查询:
cursor = coll.find(
{ "$and" : [
{"term" : 1} == events,
{ "$or" : [
{"coordinates.type" : "Point"},
{"place.full_name" : {"$ne" : None}}
]}
]},
{"coordinates" : 1, "place.full_name" : 1},
tailable = True, timeout = False )
我可以自己运行查询的OR部分。相反,我得到一个错误说:
OperationFailure: database error: $and/$or elements must be objects
我是Mongo和Python的新手。
非常感谢
答案 0 :(得分:2)
此行无效:
{"term" : 1} == events
不确定这里有什么意图,但是如果你删除'== events'它应该是一个有效的查询参数