Database
[{"_id":"a74e283a","data":[{"origin":"apple","edit":"fruit"},{"origin":"grape","edit":"fruit"},{"origin":"melon","edit":"fruit"}]}]
Query
db.collection.update({},[{$set:{data:{"$reduce":{"input":"$data","initialValue":/** assign your edit data as init value*/[{"origin":"apple","edit":"fruit_edit"},{"origin":"pear","edit":"fruit"}],"in":{"$cond":{"if":{$in:["$$this.origin","$$value.origin"]},"then":"$$value","else":{"$concatArrays":["$$value",["$$this"]]}}}}}}}])