आपको बस तर्क को थोड़ा सा फिर से लिखना है।
{ $match: { $expr: {
$or: [
{ $and: [
{ $eq: [ "$id", 1206 ] },
{ $eq: [ "$field1", 0 ] }
]},
{ $and: [
{ $ne: [ "$id", 1206 ] },
{ $eq: [ "$field1", 1545001200 ] }
]},
],
}}}
तार्किक रूप से, दो कथन समतुल्य हैं:
- दस्तावेज़ का मिलान
field1 == 0
. करके करें अगरid == 1206
, अन्यथाfield1 == 1545001200
. को चेक करके दस्तावेज़ का मिलान करें - दस्तावेज़ का मिलान करें यदि या तो (
id == 1206
औरfield1 == 0
) या (id != 1206
औरfield1 == 1545001200
)।