Database
[{items:[{/**...some object fields*/tags:[{_id:1,name:"Tag 1"},{_id:2,name:"Tag 2"},]},]},{items:[{/**no match in this document*/tags:[{_id:3,name:"Tag 1"},{_id:4,name:"Tag 2"},]},]},{items:[{/** this document is a second match*/tags:[{_id:1,name:"Tag 5"},{_id:2,name:"Tag 2"},]},]}]
Query
db.collection.update({"items.tags":{$elemMatch:{_id:1}}},{$pull:{"items.$.tags":{_id:1}}},{multi:true})