sql >> Base de Datos >  >> NoSQL >> MongoDB

Extraiga dos valores de submatriz en mongodb por $ elemMatch

Esto no es posible directamente usando find y elemMatch debido a la siguiente limitación de elemMatch y mongo array fields .

y limitaciones de campo de matriz mongo como se muestra a continuación

Así que intentaste seguir esto para descubrir solo exam o quiz

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

muestra solo exam matriz de puntuaciones.

De lo contrario, debe pasar por aggregation