Database

[{"array1":[{"array2":[{"array3":[1,2]},{"array3":[2,3]},{"array3":[3,4]},{"array3":[4,5]}]},{"array2":[{"array3":[11,21]},{"array3":[21,31]}]}]}]

Query

db.collection.aggregate([{"$addFields":{"array1":{$filter:{input:{$map:{input:"$array1",as:"array1",in:{array2:{$filter:{input:"$$array1.array2",cond:{$ne:[{$setIntersection:["$$this.array3",[1,5]]},[]]},}}}}},cond:{$ne:["$$this.array2",[]]}}}}}])

Result