Database

[{name:"xyz",age:"100",arr:["a","ab"]},{name:"abc",age:"123",arr:["e","ab"]}]

Query

db.collection.update({},[{$set:{data:{$objectToArray:{"a":"data a","ab":"data a","b":"data b","c":"data c"}}}},{$set:{index:{$indexOfArray:["$data.k",{$first:"$arr"}]}}},{$set:{data:{$cond:{if:{$eq:["$index",-1]},then:null,else:{$arrayElemAt:["$data.v","$index"]}}}}},{$unset:"index"}],{multi:true})

Result