Database

[{"_id":ObjectId("5e34682e7f8bc30a7518219d"),"items":[{"id":"item1","subitems":[{"id":"subitem1","value":1},{"id":"subitem2","value":2}]},{"id":"item2","subitems":[{"id":"subitem3","value":3},{"id":"subitem4","value":4}]},{"id":"item3","subitems":[{"id":"subitem5","value":5},{"id":"subitem6","value":6}]},{"id":"item4","subitems":[{"id":"subitem7","value":4},{"id":"subitem8","value":4}]},{"id":"item5","subitems":[{"id":"subitem4","value":1},{"id":"subitem5","value":2}]}]},{"_id":ObjectId("5e348a007f8bc30a751f1d07"),"items":[{"id":"item1","subitems":[{"id":"subitem1","value":1},{"id":"subitem2","value":2}]},{"id":"item2","subitems":[{"id":"subitem3","value":3},{"id":"subitem42","value":4}]},{"id":"item3","subitems":[{"id":"subitem5","value":5},{"id":"subitem6","value":6}]},{"id":"item4","subitems":[{"id":"subitem7","value":4},{"id":"subitem8","value":4}]}]}]

Query

db.collection.aggregate([{$match:{"items.subitems.id":"subitem4"}},{$unwind:"$items"},{$addFields:{items:{$filter:{input:"$items.subitems",as:"item",cond:{$eq:["subitem4","$$item.id"]}}}}},{$unwind:"$items"},{$group:{"_id":"$_id",items:{$push:"$items"}}}])

Result