MongoDB如何评估多个$和语句?

时间:2012-05-21 12:21:14

标签: mongodb mongodb-query

在早期的question中,我发现MongoDB对每个$or语句执行多个查询,并且在后处理中丢弃重复项。如何实现$and查询?

是否存在某种优化,如果第一个语句为FALSE,文档将被丢弃?

1 个答案:

答案 0 :(得分:2)

$和语句与$或语句明显不同。由于$和定义是限制性的,因此$和expression的任何单个子句都可以用作获取文档以进行进一步评估的单个查询。 MongoDB检查可用的索引以进行优化并选择要运行的查询。然后根据剩余子句的AND评估每个结果。正如您可能猜到的,这比$或声明要容易得多。