Database

[{_id:1,name:"a",p:null},{_id:2,name:"b",p:1},{_id:3,name:"c",p:null},{_id:4,name:"d",p:null}]

Query

db.collection.aggregate([{$match:{_id:{$in:[2,3]}}},{$lookup:{from:"collection",localField:"p",foreignField:"_id",as:"parent"}},{$project:{_id:0,id:{$concatArrays:[["$_id"],"$parent._id"]}}},{$unwind:"$id"},{$sort:{id:1}}])

Result