Database

[{"studentId":"a1","name":"John Doe","studentsReffered":[{"course":"BTECH","students":[{"studentId":"a2"},{"studentId":"a3"}]},{"course":"MTECH","students":[{"studentId":"a4"},{"studentId":"a5"}]}]},{"studentId":"a2","name":"Joseph","studentsReffered":[{"course":"BTECH","students":[{"studentId":"a6"}]}]}]

Query

db.collection.aggregate([{$facet:{users:[{$project:{studentId:1,name:1}}],allUsers:[]}},{$project:{allUsers:{$map:{input:"$allUsers",in:{$mergeObjects:["$$this",{studentsReffered:{$map:{input:"$$this.studentsReffered",in:{$mergeObjects:["$$this",{students:{$map:{input:"$$this.students",as:"s",in:{$reduce:{input:"$users",initialValue:{studentId:"$$s.studentId"},in:{$cond:[{$eq:["$$this.studentId","$$s.studentId"]},"$$this","$$value"]}}}}}}]}}}}]}}}}},{$unwind:"$allUsers"},{$replaceWith:"$allUsers"}])

Result