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

Biến tổng hợp MongoDB NOW

MongoDB cung cấp NOW biến hệ thống cho phép bạn nhận giá trị ngày giờ hiện tại khi sử dụng đường dẫn tổng hợp.

Điều này có thể hữu ích khi bạn muốn cập nhật tài liệu với ngày giờ hiện tại.

Bắt đầu từ MongoDB 4.2, các phương thức cập nhật có thể chấp nhận một đường dẫn tổng hợp. Do đó, NOW có thể được sử dụng thay thế cho $currentDate toán tử cập nhật trường để đặt ngày giờ hiện tại khi sử dụng bất kỳ phương pháp cập nhật nào.

Để truy cập NOW biến hệ thống, đặt tiền tố nó bằng hai ký hiệu đô la và đặt nó trong dấu ngoặc kép ("$$NOW" ).

Ví dụ

Giả sử chúng ta có một bộ sưu tập có tên là dogs chứa tài liệu sau:

{ "_id" : 1, "name" : "Fetch", "weight" : 25 }

Dưới đây là một ví dụ về việc sử dụng NOW biến hệ thống khi cập nhật tài liệu đó:

db.dogs.updateOne(
  { _id : 1 },
  [
    { $set : { weight : 30, lastModified : "$$NOW" } }
  ]
)

Bây giờ chúng ta hãy xem lại tài liệu:

db.dogs.find( { _id: 1 } ).pretty()

Kết quả:

{
	"_id" : 1,
	"name" : "Fetch",
	"weight" : 30,
	"lastModified" : ISODate("2021-01-27T01:29:32.833Z")
}

lastModified trường đã được thêm với một đối tượng Ngày có chứa ngày và giờ hiện tại.

Cũng có một CLUSTER_TIME biến hệ thống trả về dấu thời gian hiện tại, mặc dù điều này chỉ khả dụng trên các tập hợp bản sao và các cụm phân đoạn.

Cũng lưu ý rằng NOWCLUSTER_TIME các giá trị vẫn giữ nguyên trong suốt quá trình.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Chuyển đổi dự phòng cơ sở dữ liệu minh bạch cho các ứng dụng của bạn

  2. Sắp xếp với một chỉ mục hoạt động như thế nào trong MongoDB?

  3. Kết nối từ xa với giao diện MongoDB http trên máy chủ EC2

  4. Làm thế nào để xem các trường tài liệu trong mongo shell?

  5. Mongoose Đang cố gắng mở kết nối chưa được đóng kín