Database

[{id:1,names:[{id:2,first:[{id:3,name:"alice",},{id:4,name:"bob",},]},{id:5,first:[{id:6,name:"berhe",},{id:7,name:"belay",},]}]},{id:8,names:[{id:9,first:[{id:10,name:"gemechu",},{id:11,name:"samy",},]},{id:12,first:[{id:13,name:"helen",},{id:14,name:"natu",},]}]}]

Query

db.collection.aggregate([{$match:{id:8,names:{$elemMatch:{id:9,"first.id":10}}}},{$unwind:"$names"},{$match:{"names.id":9}},{$unwind:"$names.first"},{$match:{"names.first.id":10}},{$project:{id:"$names.first.id",name:"$names.first.name"}}])

Result