Bạn chỉ cần nhập lại logic một chút.
{ $match: { $expr: {
$or: [
{ $and: [
{ $eq: [ "$id", 1206 ] },
{ $eq: [ "$field1", 0 ] }
]},
{ $and: [
{ $ne: [ "$id", 1206 ] },
{ $eq: [ "$field1", 1545001200 ] }
]},
],
}}}
Về mặt logic, hai câu lệnh tương đương nhau:
- Khớp tài liệu bằng cách chọn
field1 == 0
ifid == 1206
, nếu không, hãy khớp với tài liệu bằng cách chọnfield1 == 1545001200
- Khớp tài liệu nếu một trong hai (
id == 1206
vàfield1 == 0
) hoặc (id != 1206
vàfield1 == 1545001200
).