Isso não é possível diretamente usando
find
e elemMatch
devido à seguinte limitação de elemMatch
e mongo array fields
. e limitações de campo de matriz mongo como abaixo
Então, ou você tentou seguir isso para descobrir apenas
exam
ou quiz
db.collectionName.find({"_id":22,"scores":{"$elemMatch":{"type":"exam"}}},{"scores.$.type":1}).pretty()
é mostra apenas
exam
matriz de pontuações. Caso contrário, você deve passar por
aggregation