Database

[{"_id":1,"array":[{"name":"name1","nestedArray":[{"value":"661564ce168c8115295a8f25"}],"nestedArray2":[{"valueToFilter":ObjectId("661564ce168c8115295a8f25")}]},{"name":"name2","nestedArray":[{"value":"661564ce168c8115295a8f27"},{"value":"661564ce168c8115295a8f28"}],"nestedArray2":[{"valueToFilter":ObjectId("661564ce168c8115295a8f29")}]}]}]

Query

db.collection.aggregate([{"$set":{"array":{"$map":{"input":"$array","as":"a","in":{"$mergeObjects":["$$a",{nestedArray:{"$map":{"input":"$$a.nestedArray","as":"na","in":{"value":{"$toObjectId":"$$na.value"}}}}}]}}}}},{"$set":{"test":{"$map":{"input":"$array","as":"arr","in":{"$setIntersection":["$$arr.nestedArray.value","$$arr.nestedArray2.valueToFilter"]}}}}},{"$match":{$expr:{"$anyElementTrue":{"$map":{"input":"$test","as":"t","in":{$eq:[[],"$$t"]}}}}}},{$unset:"test"}])

Result