Database

db={"workoutDetailSchema":[{WorkoutId:"5f60dc1069c27c015ede4e3e",Sets:{Units:"metric",Exercises:[{WorkoutExerciseId:"5f60dc1069c27c015ede4e3e",ExerciseId:"5f60c3b7f93d8e00a1cdf414",Sets:[]},{WorkoutExerciseId:"5f60dc1069c27c015ede4e34",ExerciseId:"5f60c3b7f93d8e00a1cdf415",Sets:[]}]}}],"exerciseDetailSchema":[{_id:"5f60c3b7f93d8e00a1cdf414",Name:"Squat"},{_id:"5f60c3b7f93d8e00a1cdf415",Name:"Deadlift"}]}

Query

db.workoutDetailSchema.aggregate([{$unwind:"$Sets.Exercises"},{$lookup:{from:"exerciseDetailSchema",localField:"Sets.Exercises.ExerciseId",foreignField:"_id",as:"resultingArray"}},{$group:{_id:"$WorkoutId",Sets:{$push:"$Sets.Exercises"},ExerciseDetail:{"$push":"$resultingArray"}}},{$addFields:{ExerciseDetail:{$reduce:{input:"$ExerciseDetail",initialValue:[],in:{$concatArrays:["$$value","$$this"]}}}}},{$project:{_id:1,Sets:{$map:{input:"$Sets",as:"set",in:{$let:{vars:{exDetail:{$arrayElemAt:[{$filter:{input:"$ExerciseDetail",cond:{$eq:["$$this._id","$$set.ExerciseId"]}}},0]}},in:{$mergeObjects:["$$set","$$exDetail"]}}}}}}}])

Result