MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

MongoDB trova i record di oggi

possiamo usare $where

db.collection.find(
   { $where: "this._id.getTimestamp() >= ISODate('2017-02-25')" }
)

Per ricevere i documenti di oggi, o meglio di mezzanotte scorsa:

db.collection.find( { $where: function() { 
    today = new Date(); //
    today.setHours(0,0,0,0);
    return (this._id.getTimestamp() >= today)
} } );

ovviamente è molto più veloce avere un campo timestamp indicizzato o seguire l'approccio con il calcolo di un ObjectID per la data di inizio e confrontare _id con esso, poiché anche _id è indicizzato.