MongoDB $或$ match阶段的两个字段

时间:2019-02-26 18:04:25

标签: javascript mongodb aggregation-framework

这是我的MongoDB文档的示例:

{
    "_id" : ObjectId("59caa2660aaafa0016344ce0"),
    "field1" : true,
    "field2" : false
}
{
    "_id" : ObjectId("59caa2690aaafa0016344ce1"),
    "field1" : false,
    "field2" : false
}
{
    "_id" : ObjectId("59caa26c0aaafa0016344ce2"),
    "field1" : false,
    "field2" : true
}

我该如何匹配所有field1field2 OR 值为field1 OR 的文档field2设置为true?

换句话说,我想排除field1field2均为假的文档。

1 个答案:

答案 0 :(得分:4)

您可以将$expr$or结合使用,尝试:

db.col.find({ $expr: { $or: [ "$field1", "$field2" ] } })