Database

db={"c1":[{_id:123,studentnumber:123,firstname:"John",lastname:"Doe",schoolId:387,current_position:"A",}],"c2":[{_id:456,studentId:123,studentnumber:123,schoolId:543}],"c3":[{_id:387,schoolName:"Some school"},{_id:543,schoolName:"Some other school"},]}

Query

db.c1.aggregate([{"$lookup":{"from":"c2","let":{id:"$studentnumber"},"pipeline":[{"$lookup":{"from":"c3","localField":"schoolId","foreignField":"_id","as":"school"}},{"$match":{"$expr":{"$eq":["$$id","$studentId"]}}}],"as":"doc"}},{"$addFields":{"doc":{"$arrayElemAt":["$doc",0]}}},{"$addFields":{"doc.school":{"$arrayElemAt":["$doc.school",0]}}},{"$project":{"_id":1,"firstname":1,"lastname":1,"current_position":1,"school":"$doc.school"}}])

Result