MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

Искам да извлека стойности, вмъкнати на определена дата, използвайки _id на mongodb

Въпреки че е вярно, че ObjectId отчасти се основава на "timestamp", обикновено това е операция на "клиентска" библиотека за "извличане" на тази дата от стойността на ObjectId.

Можете да направите това с оценката на JavaScript на $where , но ще трябва да „сканира“ цялата колекция, така че не е много ефективно:

 db.collection.find(function() {
     return (
        ( this._id.getTimestamp().valueOf() - 
          this._id.getTimestamp().valueOf() % ( 1000 * 60 * 60 * 24 ) )
        == new Date("2014-07-14").valueOf() );
 })

Това основно ще сравни, за да види дали ObjectId е създаден на същия ден като посочената дата. Друга математика или методи за дата се прилагат за други интервали.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongooseJS - Как да запазите документ и препратен документ

  2. Как да използвам оператори за агрегиране в $match в MongoDB (например $year или $dayOfMonth)?

  3. Как се прави съединяване на масив в mongoose (mongodb) с node.js?

  4. MongoDump заявка с BinData

  5. Използване на PouchDB с MongoDB