MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tôi có thể truy vấn MongoDB ObjectId theo ngày không?

Đưa Dấu thời gian vào ObjectIds bao gồm các truy vấn dựa trên ngày tháng được nhúng trong ObjectId một cách chi tiết.

Ngắn gọn trong mã JavaScript:

/* This function returns an ObjectId embedded with a given datetime */
/* Accepts both Date object and string input */

function objectIdWithTimestamp(timestamp) {
    /* Convert string date to Date object (otherwise assume timestamp is a date) */
    if (typeof(timestamp) == 'string') {
        timestamp = new Date(timestamp);
    }

    /* Convert date object to hex seconds since Unix epoch */
    var hexSeconds = Math.floor(timestamp/1000).toString(16);

    /* Create an ObjectId with that hex timestamp */
    var constructedObjectId = ObjectId(hexSeconds + "0000000000000000");

    return constructedObjectId
}


/* Find all documents created after midnight on May 25th, 1980 */
db.mycollection.find({ _id: { $gt: objectIdWithTimestamp('1980/05/25') } });


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $ acosh

  2. Mongodb:Không kết nối được với 127.0.0.1:27017, lý do:errno:10061

  3. Ký tự khoảng trắng trong MongoDB

  4. Nén tiền tố chỉ mục trong MongoDB 3.0 WiredTiger

  5. node.js không thể tìm thấy mô-đun 'mongodb'