Database
db={"products":[{"_id":ObjectId("60d9c9ff7fde704f28e89040"),"status":"NONE","questions":[{"id":"607569f06df0a80197227d06","value":"A String Value 1"},{"id":"607569f78f403f67dd1fefed","value":"A String value 2"},{"id":"607569f78f403f67dd1fefef","value":"A String value 3"},{"id":"607569e0701e55c65eae7554","value":ObjectId("60d9c9fc7fde704f28e88fd2")},{"id":"607569e86b5b2a2175cce0f0","value":ObjectId("60d9c9fc7fde704f28e88fd2")},{"id":"607569fff2597be5ff2444fd","value":ObjectId("60d9c9fc7fde704f28e88fd4")},{"id":"607569fff2597be5ff2444fc","value":ObjectId("60d9c9fc7fde704f28e88fe4")}]}],"ex_ref_data":[{"_id":ObjectId("60d9c9fc7fde704f28e88fe4"),"type":"type_1","displayLabel":"A"},{"_id":ObjectId("60d9c9fc7fde704f28e88fd4"),"type":"type_1","displayLabel":"B"},{"_id":ObjectId("60d9c9fc7fde704f28e88fd2"),"type":"type_2","displayLabel":"C"}]}
Query
db.products.aggregate([{$project:{status:1,ref:{$filter:{input:"$questions",cond:{$eq:[{$type:"$$this.value"},"objectId"]}}},nonRef:{$filter:{input:"$questions",cond:{$ne:[{$type:"$$this.value"},"objectId"]}}}}},{$lookup:{from:"ex_ref_data",let:{questionValue:"$ref.value"},pipeline:[{$match:{$expr:{$in:["$_id","$$questionValue"]}}},{$project:{value:"$displayLabel"}}],as:"refResult"}},{$addFields:{ref:{$map:{input:"$ref",as:"r",in:{$mergeObjects:["$$r",{$first:{$filter:{input:"$refResult",cond:{$eq:["$$this._id","$$r.value"]}}}}]}}}}},{$unset:"ref._id"},{$project:{status:1,questions:{$concatArrays:["$nonRef","$ref"]}}}])