Sie können dies mit dem Aggregation Framework tun.
db.repository.aggregate([
{ "$match": {
"datetime_int": { "$gte": 1451952000 },
"software.adobe.licenses.key" : { "$exists" : true }
}},
{ "$project": {
"hash": 1,
"key": {
"$map": {
"input": "$software.adobe.licenses",
"as": "soft",
"in": "$$soft.key"
}
}
}}
])
Ab MongoDB 3.2 können Sie das Unterdokument-Array-Feld direkt projizieren.
{ "$project": { "hash": 1, "key": "$software.adobe.licenses.key"}}