我需要在MongoDB中查询一组文档,以找到满足至少一个N个条件(基本上是OR)但所有结果中至少一个文档都应满足N个条件的所有项目。
例如,如果我的条件是[field1=aaa, field2=bbb]
,那么我想要一个查询,该查询将返回文档[D1, D2, ..., Dm]
,以便每个D都匹配表达式field1=aaa OR field2=bbb
以及每个条件至少具有一个与其匹配的D。
一个好的结果是:
[
{
"_id": "123",
"field1": "aaa"
},
{
"_id": "456",
"field2": "bbb"
}
]
不好的结果是:
[
{
"_id": "123",
"field1": "aaa"
},
{
"_id": "456",
"field1": "aaa"
}
]
您知道如何在Mongo中执行这种查询吗?
编辑-澄清一下,条件可能很复杂,需要查看复杂JSON中的嵌套字段。