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

Filtro de mangosta basado en clave de fecha dinámica con valor

Si desea buscar por propiedad en el documento incrustado, debe usar la notación de puntos

esto no funcionará, porque le está pidiendo a mongoo que encuentre el documento que tiene un objeto de asistencia igual al mismo objeto dado.

{ "attendances": {"2019-08-26": "Present"}}

esto funcionará solo si el objeto de asistencia en su base de datos contiene solo

{ "attendances": {"2019-08-26": "Present"}}

eso significa que le pregunta a mongoo si el objeto almacenado es igual al objeto dado y devolverá false

 { "attendances": {"2019-08-26": "Present" , "2019-08-27": "Sick"}} ==  { "attendances": {"2019-08-26": "Present"}}

para hacer esto, debe usar la notación de puntos

 Employee.collection.countDocuments({"attendances.2019-08-26":"Present"},(err,data)=>{
    if(err){
      res.status(500)
      res.send(err)
    }else{
      res.status(200)
      res.json(data)
    }
  })