Let's say I have the below document:
{
MyField1: 'A',
MyArray: [
{
MyArrayField1: 'C';
},
{
MyArrayField1: 'A';
}
]
}
How can I select all documents in MyArray
an object with MyArrayField1 = MyField1
?
I tried
db.find({$expr: {$eq: ["$MyArray.MyArrayField1", "$MyField1"]}})
even
db.find({$expr: {$eq: ["$MyArray.MyArrayField1", "A"]}})
but it's not working :(
You can use $in operator
db.col.find({
$expr: {
$in: [ "$MyField1", "$MyArray.MyArrayField1" ]
}
})
In this case MyArray.MyArrayField1
will represent an array of two values A
and C