MongoDB中的多范围查询

6
有没有一种方法可以在MongoDB中执行单个查询,针对多个不同的文档范围?
例如:!(x > 10 && x < 20) && !(x > 25 && x < 30),其中x是某个字段。

“x” 怎么可能小于20且大于25呢? - WiredPrairie
实际上,我想查询排除项。 - paulkon
1个回答

9
您可以使用 $or 运算符来构建该查询,结合 $gte$lte 操作符将布尔表达式反转:
db.coll.find({
    $or: [{x: {$lte: 10}}, {x: {$gte: 20, $lte: 25}}, {x: {$gte: 30}}]
})

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接