Database

db={persons:[{"_id":ObjectId("5f3258cfbaaccedaa5dd2c96"),"gender":"male","name":{"title":"mr","first":"victor","last":"pedersen"}},{"_id":ObjectId("5f3258cfbaaccedaa5dd2c97"),"gender":"male","name":{"title":"mr","first":"jackie","last":"chan"}}],persondetails:[{"_id":ObjectId("5f3a91e68b1c26e68f9ed3ad"),"country":"India","personid":ObjectId("5f3258cfbaaccedaa5dd2c96")}]}

Query

db.persons.aggregate([{"$match":{"$and":[{"$expr":{"$eq":["$gender","male"]}},]}},{"$facet":{"totalCount":[{"$count":"value"}],"data":[{"$project":{"_id":"$_id","fname":"$name.first","lname":"$name.last","dobage":"$dob.age","registeredAge":"$registered.age"}},{"$sort":{"name.first":1}},{"$lookup":{"from":"persondetails","let":{person_id:"$_id"},"pipeline":[{$match:{$expr:{$and:[{$eq:["$$person_id","$personid"]},{$eq:["$country","India"]},]}}}],"as":"persondetail"}}]}}])

Result