MongoDB中的多范围查询

时间:2013-12-29 03:06:00

标签: mongodb

有没有办法在MongoDB中为多个不同范围的文档执行单个查询?

e.g。

!(x > 10 && x < 20) && !(x > 25 && x < 30),其中x是某个字段。

1 个答案:

答案 0 :(得分:6)

您可以通过反转布尔表达式,使用$or$gte$lte运算符构造该查询:

db.coll.find({
    $or: [{x: {$lte: 10}}, {x: {$gte: 20, $lte: 25}}, {x: {$gte: 30}}]
})