【发布时间】:2017-10-27 18:34:52
【问题描述】:
有没有办法找出在 find 查询中失败的条件。
考虑以下架构:
{
a: String,
b:[{
b_id: String
}]
}
我正在搜索匹配“a”和“b_id”的记录。但是如果 'a' 不匹配,那么我需要采取不同的行动,如果没有找到 'b_id',则采取不同的行动。
现在我正在寻找带有“a”的文档,然后循环遍历结果以匹配“b_id”。这对我来说不是一个有效的解决方案,因为循环很容易超过数万次。
有没有办法找出不匹配的条件或任何其他有效的方法?
【问题讨论】:
-
如果您有 'a' 和 'b_id' 条件,则仅检索同时满足这两个条件的文档。如果您需要具有任一条件的文档,则需要使用 or 查询。