Database

[{_id:1,"salutation":"test","members":[{_id:1,name:"John",status:"regular"}],user:"UserId"},{_id:2,"salutation":"test","members":[{_id:3,name:"John",status:"regular"},{_id:5,name:"Negan",status:"helper"}],user:"UserId"}]

Query

db.collection.update({_id:{$in:[1,2]}},[{$set:{members:{$cond:{if:{$in:[5,"$members._id"]},then:{$map:{input:"$members",as:"sub",in:{$cond:{if:{$eq:["$$sub._id",5]},then:{_id:5,status:"regular_updated",name:"Negan_updated"},else:"$$sub"},},},},else:{$concatArrays:["$members",[{_id:5,status:"regular_upserted",name:"Negan_upserted"}]]},},},},}],{multi:true})

Result