{ "$match": { "$and": [ { "is_active": { "$eq": True }},{ "is_delete": { "$eq": False }}] } }
这是我查找聚合的匹配条件,它工作正常。
现在我需要再添加两个条件,这些不是必填字段,它们可能是null或not,我想我需要里面的or条件,当我通过abc和时,和条件作为顶级查询xyz 它正在工作,如果我没有通过两者或任何失败的(没有提供正确的数据)
{ "abc_id" : { "$eq": abc } },{ "xyz_id" : {"$in": [xyz]} }
我怎样才能做到这一点,感谢您的投入。
你可以包括
or
:
{
"$match": {
"$and": [
{ "is_active": { "$eq": True } },
{ "is_delete": { "$eq": False } },
{
"$or": [
{ "abc_id": { "$eq": abc } },
{ "xyz_id": { "$in": [xyz] } }
]
}
]
}
}