To není možné přímo pomocí find
a elemMatch
kvůli následujícímu omezení elemMatch
a mongo array fields
.
a omezení pole pole mongo, jak je uvedeno níže
Takže jste buď zkusili toto, abyste zjistili pouze exam
nebo quiz
db.collectionName.find({"_id":22,"scores":{"$elemMatch":{"type":"exam"}}},{"scores.$.type":1}).pretty()
zobrazuje pouze exam
pole skóre.
Jinak byste měli projít aggregation