Как сделать ORs в MongoDB? - PullRequest
       5

Как сделать ORs в MongoDB?

0 голосов
/ 03 октября 2010

Какой лучший способ сделать запрос в MongoDB?

SELECT * FROM things WHERE (a = 1 or b = 1) and (c = 2 or d = 2)

Спасибо.

Ответы [ 2 ]

1 голос
/ 03 октября 2010

@ Дрю , правильный ответ на этот запрос следующий:

db.test.find( { $or : [ { a : 1}, { b : 1 } ], $or : [ { c : 2 }, { d : 2 } ] } )

Это a = 1 or b = 1 и c = 2 or d = 2.Если вы посмотрите на код, вы заметите, что у вас есть два предложения или , разделенные запятой.При выполнении поиска запятая фактически является выражением и .

Документы по использованию выражения $ или см. В здесь .

1 голос
/ 03 октября 2010

Вы можете использовать выражение $ или .

db.things.find ({$ или: [{a: 1}, {b: 1}], $ или: [{c: 2}, {d: 2}]})

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...