Database

[{"data":[{"entry":{"fieldA":"aaa","fieldB":"xxx"}},{"entry":{"fieldA":"ccc","fieldB":"yyy"}},{"entry":{"fieldA":"eee","fieldB":"xxx"}}]},{"data":[{"entry":{"fieldA":"aaa","fieldB":"xxx"}},{"entry":{"fieldA":"ccc","fieldB":"yyy"}},{"entry":{"fieldA":"eee","fieldB":"nnn"}}]},{"data":[{"entry":{"fieldA":"aaa","fieldB":"yyy"}},{"entry":{"fieldA":"ccc","fieldB":"yyy"}},{"entry":{"fieldA":"eee","fieldB":"xxx"}}]}]

Query

db.collection.aggregate([{$project:{data:{$filter:{input:"$data",cond:{$or:[{$eq:["$$this.entry.fieldA","aaa"]},{$eq:["$$this.entry.fieldA","eee"]}]}}}}},{$match:{$expr:{$and:[{$eq:[{$size:"$data"},2]},{$eq:[{$first:"$data.entry.fieldB"},{$last:"$data.entry.fieldB"}]}]}}}])

Result