MongoDB - 多个$或操作

Mik*_*ike 57 key mongodb

我怎么会有多个$或操作?到目前为止,我已经尝试了以下但它默默地忽略了第二个$或.

{
  $or: [{a: 2}, {a: 3}], 
  $or: [{b: 5}, {b: 4}]
}
Run Code Online (Sandbox Code Playgroud)

我认为这是因为我使用了两个相同的键.有没有办法解决?

Nad*_*der 96

Mongo 2.0添加了$和运算符,因此您可以执行以下查询:

db.things.find({$and: [{$or : [{'a':1},{'b':2}]},{$or : [{'a':2},{'b':3}]}] })
Run Code Online (Sandbox Code Playgroud)

http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24and

  • 谢谢!Mongo 文档在这里解释了这一点:https://docs.mongodb.com/manual/reference/operator/query/and/#op._S_and (4认同)