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","let":{id:"$_id"},"pipeline":[{$match:{$expr:{$in:["$$id",{$map:{"input":"$rooms","as":"room","in":"$$room.$id"}}]}}},{$project:{a:"$fruit"}}],"as":"houseFruits"}}])

Result