Hướng dẫn mongodb get timestamp from id - mongodb lấy dấu thời gian từ id

Tài liệu về nhà → Hướng dẫn sử dụng MongoDBMongoDB Manual

Trên trang này

  • Thí dụ

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
9return phần dấu thời gian của
var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		
0 là một ngày.
Hướng dẫn mongodb get timestamp from id - mongodb lấy dấu thời gian từ id

Returns the timestamp portion of the

var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		
0 as a Date.

Thí dụ

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
9return phần dấu thời gian của
var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		
0 là một ngày.
var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		
1
method on an
var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		
0

ObjectId("507c7f79bcf86cd7994f6c0e").getTimestamp()

Ví dụ sau đây gọi phương thức

var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		
1 trên
var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		
0

ISODate("2012-10-15T21:26:17Z")

Điều này sẽ trả về đầu ra sau:

Mẹo

Xem thêm:

Loại BSON ObjectIDObjectIdObjectId.toString() →

Hướng dẫn mongodb get timestamp from id - mongodb lấy dấu thời gian từ id

Bạn có biết rằng mỗi mongodb Objectid chứa một dấu thời gian nhúng của thời gian sáng tạo của nó?

Từ vỏ Mongo, bạn có thể sử dụng getTimestamp () để truy xuất dấu thời gian từ ObjectID, nhưng không có chức năng tích hợp nào để tạo ra một ObjectID từ dấu thời gian.getTimestamp() to retrieve the timestamp from the ObjectId, but there's no built in function to generate an ObjectId from a timestamp.

Bộ chuyển đổi trực tuyến này sẽ chuyển đổi từ Timestamp sang ObjectID và ngược lại.

ID đối tượng


(Lưu ý: Không phải duy nhất, chỉ sử dụng để so sánh, không phải để tạo tài liệu mới!)

(thuận tiện để dán vào vỏ Mongo)

Thời gian (UTC))

Năm (xxxx)
Tháng (1 - 12)
Ngày (1 - 31)
Giờ
Phút
Giây
Dấu thời gian ISO

Tại sao tạo ra một ObjectID từ dấu thời gian?

Để truy vấn tài liệu theo ngày sáng tạo.

ví dụ. Để tìm tất cả các nhận xét được tạo sau 2013-11-01:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})

Chức năng JavaScript

var objectIdFromDate = function (date) {
	return Math.floor(date.getTime() / 1000).toString(16) + "0000000000000000";
};

var dateFromObjectId = function (objectId) {
	return new Date(parseInt(objectId.substring(0, 8), 16) * 1000);
};
		

Nhận dấu thời gian từ một mặt hàng thu gom MongoDB, với hướng dẫn:

Dấu thời gian được chôn sâu trong ruột của đối tượng MongoDB.

Đăng nhập vào vỏ MongoDB

ubuntu@ip-10-0-1-223:~$ mongo 10.0.1.223
MongoDB shell version: 2.4.9
connecting to: 10.0.1.223/test

Tạo cơ sở dữ liệu của bạn bằng cách chèn các mục

> db.penguins.insert({"penguin": "skipper"})
> db.penguins.insert({"penguin": "kowalski"})
> 

Kiểm tra xem nó có ở đó không:

> show dbs
local      0.078125GB
penguins   0.203125GB

Hãy làm cho cơ sở dữ liệu đó thành một cơ sở dữ liệu mà chúng ta đang sử dụng

> use penguins
switched to db penguins

Nhận cho mình một isodate:

> ISODate("2013-03-01")
ISODate("2013-03-01T00:00:00Z")

In một số JSON:

> printjson({"foo":"bar"})
{ "foo" : "bar" }

Lấy lại hàng:

ISODate("2012-10-15T21:26:17Z")

0

Chúng tôi chỉ muốn kiểm tra một hàng

ISODate("2012-10-15T21:26:17Z")

1

Nhận _id của hàng đó:

ISODate("2012-10-15T21:26:17Z")

2

Nhận dấu thời gian từ đối tượng _ID:

ISODate("2012-10-15T21:26:17Z")

3

Nhận dấu thời gian của bản ghi thêm cuối cùng:

ISODate("2012-10-15T21:26:17Z")

4

Vòng lặp ví dụ, chuỗi in:

ISODate("2012-10-15T21:26:17Z")

5

Vòng lặp ví dụ, giống như find (), in các hàng

ISODate("2012-10-15T21:26:17Z")

6

Vòng lặp, nhận ngày hệ thống:

ISODate("2012-10-15T21:26:17Z")

7

Vòng lặp, nhận ngày của mỗi hàng:

ISODate("2012-10-15T21:26:17Z")

8

Lọc xuống chỉ những ngày

ISODate("2012-10-15T21:26:17Z")

9

Lọc thêm chỉ cho các chuỗi:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
0

In một ngày trần, nhận loại của nó, gán một ngày:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
1

Chuyển đổi ví dụ của ngày thành yyyy-mm-dd

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
2

Nhận nó ở định dạng Yyyy-MM-DD cho mỗi hàng:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
3

Tolocaledatestring là Briefer:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
4

Nhận từng hàng trong YYYY-MM-DD HH: MM: SS định dạng:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
5

Nhận ngày của hàng được thêm vào cuối cùng:

ISODate("2012-10-15T21:26:17Z")

4

Thả cơ sở dữ liệu khi bạn hoàn tất:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
7

Hãy chắc chắn rằng nó đã biến mất:

db.comments.find({_id: {$gt: ObjectId("5272e0f00000000000000000")}})
8

Bây giờ MongoDB của bạn là WebScale.

Làm cách nào để đọc dấu thời gian trong MongoDB?

getTimestamp () trả về phần dấu thời gian của objectId () là một ngày. Returns the timestamp portion of the ObjectId() as a Date.

MongoDB có dấu thời gian không?

Dấu thời gian. BSON có loại dấu thời gian đặc biệt để sử dụng MongoDB nội bộ và không được liên kết với loại ngày thông thường. Loại dấu thời gian bên trong này là giá trị 64 bit trong đó: 32 bit quan trọng nhất là giá trị thời gianBSON has a special timestamp type for internal MongoDB use and is not associated with the regular Date type. This internal timestamp type is a 64 bit value where: the most significant 32 bits are a time_t value (seconds since the Unix epoch)

Timestamp được lưu trữ như thế nào trong MongoDB?

MongoDB lưu trữ thời gian trong UTC theo mặc định và sẽ chuyển đổi bất kỳ biểu diễn thời gian địa phương nào thành biểu mẫu này. Các ứng dụng phải vận hành hoặc báo cáo về một số giá trị thời gian địa phương không được sửa đổi có thể lưu trữ múi giờ cùng với dấu thời gian UTC và tính toán thời gian cục bộ ban đầu trong logic ứng dụng của chúng., and will convert any local time representations into this form. Applications that must operate or report on some unmodified local time value may store the time zone alongside the UTC timestamp, and compute the original local time in their application logic.

$ Oid trong MongoDB là gì?

Một ObjectID là một trường 12 byte của loại BSON. 4 byte đầu tiên đại diện cho dấu thời gian UNIX của tài liệu. 3 byte tiếp theo là ID máy mà máy chủ MongoDB đang chạy.a 12-byte Field Of BSON type. The first 4 bytes representing the Unix Timestamp of the document. The next 3 bytes are the machine Id on which the MongoDB server is running.