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

Có cách nào để hiển thị dấu thời gian ở định dạng unix sang ISODate không?

Bối cảnh

  • unixtime giá trị đại diện cho giây kể từ kỷ nguyên (ngày 1 tháng 1 năm 1970).

  • Ngày JavaScript () đại diện cho mili giây kể từ kỷ nguyên.

  • Trong MongoDB, ISODate() là một trình bao bọc tiện lợi cho Date() cho phép bạn tạo ngày tháng từ các chuỗi ISO trong mongo vỏ bọc. Nếu bạn sử dụng new Date() trong shell, nó sẽ trả về ISODate() .

Chuyển đổi

Để chuyển đổi giữa unixtime và ISODate (), bạn có thể nhân dấu thời gian unix của mình với 1000 và chuyển giá trị này vào new Date() phương thức khởi tạo.

Một ví dụ đơn giản trong mongo vỏ:

> db.mydata.insert({
    unixtime: 1362143511
})

> var doc = db.mydata.findOne();

// convert unixtime seconds to milliseconds and create JS date
> var date = new Date(doc.unixtime * 1000);

> date
ISODate("2013-03-01T13:11:51Z")


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Đối số thứ ba khi tạo mô hình trong MongooseJS

  2. Có thể nhập dữ liệu ép kiểu bên trong một đường ống tổng hợp trên MongoDB không?

  3. Bộ sưu tập phân mảnh MongoDB không tái cân bằng

  4. mongo dot ký hiệu không rõ ràng

  5. Phần tử mảng cập nhật MongoDB