Để chuyển đổi ngày thành dấu thời gian trong MongoDB, hãy sử dụng tổng hợp (). Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -
> db.demo93.insertOne({"UserName":"Chris","ArrivalDate":new ISODate("2020-10-01")});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e2d4b6479799acab037af68")
}
> db.demo93.insertOne({"UserName":"David","ArrivalDate":new ISODate("2019-12-31")});
{
"acknowledged" : true,
"insertedId" : ObjectId("5e2d4b7379799acab037af69")
} Hiển thị tất cả các tài liệu từ một bộ sưu tập với sự trợ giúp của phương thức find () -
> db.demo93.find();
Điều này sẽ tạo ra kết quả sau -
{ "_id" : ObjectId("5e2d4b6479799acab037af68"), "UserName" : "Chris", "ArrivalDate" : ISODate("2020-10-01T00:00:00Z") }
{ "_id" : ObjectId("5e2d4b7379799acab037af69"), "UserName" : "David", "ArrivalDate" : ISODate("2019-12-31T00:00:00Z") } Sau đây là truy vấn để chuyển đổi ngày thành dấu thời gian trong MongoDB -
> db.demo93.aggregate([
... { "$match": { "UserName": "Chris" }},
... { "$addFields": {
... "timestamp": { "$toLong": "$ArrivalDate" }
... }}
... ]); Điều này sẽ tạo ra kết quả sau -
{ "_id" : ObjectId("5e2d4b6479799acab037af68"), "UserName" : "Chris", "ArrivalDate" : ISODate("2020-10-01T00:00:00Z"), "timestamp" : NumberLong("1601510400000") }