Database
db={"houses":[{"_id":1001,"fruit":"apple","dummy":"ignoreMe","rooms":[{$ref:"rooms",$id:ObjectId("1bcdefbcdefbcdefbcdefbcd")},{$ref:"rooms",$id:ObjectId("2bcdefbcdefbcdefbcdefbcd")}]},{"_id":1002,"fruit":"pear","dummy":"ignoreMe","rooms":[{$ref:"rooms",$id:ObjectId("2bcdefbcdefbcdefbcdefbcd")},{$ref:"rooms",$id:ObjectId("3bcdefbcdefbcdefbcdefbcd")}]}],"rooms":[{"_id":ObjectId("1bcdefbcdefbcdefbcdefbcd"),"description":"room 1"},{"_id":ObjectId("2bcdefbcdefbcdefbcdefbcd"),"description":"room 2"},{"_id":ObjectId("3bcdefbcdefbcdefbcdefbcd"),"description":"room 3"}]}
Query
db.rooms.aggregate([{$lookup:{from:"houses",localField:"_id",foreignField:"rooms.$id",pipeline:[{$project:{a:"$fruit"}}],as:"houseFruits"}}])