Database
[{"field1":{"subfield1":"asd","subfield2":"asd"},"field2":{"subfield2":"asd","subfield3":"asd"},"field3":{"subfield1":"asd","subfield3":"asd",}}]
Query
db.collection.aggregate([{"$project":{_id:0}},{"$project":{"root":{"$objectToArray":"$$ROOT"}}},{"$unwind":"$root"},{"$match":{"root.v.subfield2":{"$exists":true}}},{"$group":{"_id":null,"root":{"$addToSet":"$root"}}},{"$project":{"root":{"$arrayToObject":"$root"}}},{"$project":{"field1":"$root.field1","field2":"$root.field2",_id:0}}])