MongoDB эквивалент для SQL-запроса - PullRequest
2 голосов
/ 17 октября 2011

Любая идея, как представить следующее условие SQL для MongoDB

WHERE
     a = 1
AND  b = 2
AND  (c >= 3 OR c IS NULL)
AND  d = 4

Пробовал это, но, кажется, не работает:

{ a:1, b:2, c:{ $in:[ { $gte:3 }, { $exists: false } ] } , d:4 }

Это не работает, так как ключ 'c' переопределяется:

{ a:1, b:3, $or:[ { c:{ $gte:3 } }, { c:{ $exists:false } } ] , d:4 }

Любая помощь очень ценится

1 Ответ

4 голосов
/ 17 октября 2011

Я думаю, это то, что вы ищете:

{"a": 1, "b": 2, "$ or": [{"c": {"$ gte":3}}, {"c": {"$ exist": false}}], "d": 4}

...