MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Extrahieren Sie zwei Sub-Array-Werte in mongodb von $elemMatch

Dies ist nicht direkt mit find möglich und elemMatch wegen folgender Einschränkung von elemMatch und mongo array fields .

und Mongo-Array-Feldbeschränkungen wie unten

Also entweder Sie haben versucht, dies zu tun, um nur exam herauszufinden oder quiz

db.collectionName.find({"_id":22,"scores":{"$elemMatch":{"type":"exam"}}},{"scores.$.type":1}).pretty()

zeigt nur exam Punkte-Array.

Andernfalls sollten Sie die aggregation durchlaufen