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

elemMatch combinado con otros campos de consulta en Mongoose

En su consulta que funciona, el $elemMatch El objeto no es otra condición de consulta, pero es el parámetro de selección de campo de salida (es decir, proyección) para find .

Para hacer lo mismo en Mongoose, haría algo como:

PatientsModel.find({patientId: '123'}, {diet: {$elemMatch: {'status': 'A'}}}, cb)

O

PatientsModel
    .where('patientId', '123')
    .select({diet: {$elemMatch: {'status': 'A'}})
    .exec(cb);