Database

[{_id:1,"_a":[{"_p":[{_pubId:{"CC":"EN"},_prid:"2",s:{c:{text:[{secId:"4"},{secId:"5"}]},d:{text:[{secId:"6"},{secId:"7"}]}}},{_pubId:{"CC":"CZ"},_pubRID:"4",s:{c:{text:[{secId:"8"},{secId:"9"}]}}}]},{"_p":[{_pubId:{"CC":"CZ"},_prid:"200",s:{c:{text:[{secId:"4"},{secId:"5"}]},d:{text:[{secId:"6"},{secId:"7"}]}}},{_pubId:{"CC":"BG"},_pubRID:"4",s:{c:{text:[{secId:"8"},{secId:"9"}]}}}]}]}]

Query

db.collection.aggregate([{"$match":{"_a._p._pubId.CC":"EN"}},{"$project":{"_id":0,"output":{"$reduce":{"input":{"$reduce":{"input":{"$reduce":{"input":"$_a._p","initialValue":[],"in":{"$concatArrays":["$$value","$$this"]}}},"initialValue":[],"in":{"$concatArrays":["$$value",{"$cond":[{"$eq":["$$this._pubId.CC","EN"]},{"$map":{"input":{"$objectToArray":"$$this.s"},"as":"s","in":{"$map":{"input":"$$s.v.text","as":"text","in":{"$mergeObjects":[{"_prid":"$$this._prid"},"$$text"]}}}}},[]]}]}}},"initialValue":[],"in":{"$concatArrays":["$$value","$$this"]}}}}},{"$unwind":"$output"},{"$replaceWith":"$output"}])

Result