Database

[{"items":{"item":[{"@pid":"131","text":"Apple"},{"@pid":"61","text":"Mango"},{"@pid":"92","text":"cherry"},{"@pid":"27","text":"grape"},{"@pid":"34","text":"dragonfruit"}]},"type":"A"},{"items":{"item":[{"@pid":"131","text":"Apple"},{"@pid":"27","text":"grape"},{"@pid":"34","text":"dragonfruit"}]},"type":"B"},{"items":{"item":[{"@pid":"131","text":"Apple"}]},"type":"A"}]

Query

db.collection.aggregate([{$unwind:"$items.item"},{$match:{"items.item.text":{$regex:"Apple|Mango"}}},{$group:{_id:"$items.item.text",type:{$push:"$type"}}}])

Result