sql >> Database >  >> NoSQL >> MongoDB

Mongoose zoekt naar geneste documenten van meer of minder dan een bepaalde datum

Gebruik puntnotatie om binnen de ingesloten array-documenten te reiken. Om bijvoorbeeld te zoeken naar de Post opmerkingen met een created_at tussen date1 en date2 :

Post.find({ "comments.created_at": { $gt: date1, $lt: date2 }}, function (err, docs) {
     ...
});

UPDATE

Bedankt voor de bewerking; nu begrijp ik dat je de opmerkingen van een enkele post probeert te filteren op hun created_at datum. Je kunt dat niet rechtstreeks doen met MongoDB-query's, maar ik geloof dat je het kunt doen met het 2.2-aggregatieraamwerk als je bij die versie bent. Bekijk de bespreking van dit functieverzoek op Jira voor voorbeelden.




  1. mongodb:invoegen indien niet bestaat

  2. MongoDB 3.6.2 2008R2 Plus wordt niet geïnstalleerd

  3. Nodejs applicatie docker kan geen verbinding maken met mongodb docker container

  4. MongoDB:aggregeer $project add-veld met statische waarde