Ngày được thể hiện như thế nào trong mongodb?

Người mới bắt đầu sử dụng MongoDB thường khó hiểu khi lưu trữ ngày và giờ. Một số người quyết định sử dụng dấu thời gian NHƯNG có một cách tốt hơn nhiều để lưu trữ ngày và giờ trong MongoDB

Cơ sở dữ liệu không dành cho con người đọc nhưng thật tuyệt khi lưu trữ ở định dạng thuận tiện và ở dạng con người có thể đọc được

Để tôi nói với bạn rằng việc di chuyển cơ sở dữ liệu từ định dạng ngày này sang định dạng ngày khác là một cơn ác mộng. Nếu ứng dụng phức tạp, bạn cũng sẽ gặp những lỗi khó chịu. Vì vậy, điều quan trọng là lập kế hoạch quản lý ngày-giờ một cách hoàn hảo trong ứng dụng của bạn

Tôi đã di chuyển một Nút. js khỏi dấu thời gian và tôi mất khoảng 10 ngày để tìm và sửa lỗi (chủ yếu là chuyển đổi ngày)

Định dạng tốt nhất để lưu trữ ngày và giờ

Định dạng tốt nhất để lưu trữ ngày và giờ trong MongoDB là định dạng ngày và giờ gốc javascript Date() hoặc ISO vì nó chuyển đổi nội bộ nó thành đối tượng Ngày gốc BSON

Các tài liệu MongoDB chính thức nói về

Ngày BSON là một số nguyên 64 bit đại diện cho số mili giây kể từ kỷ nguyên Unix (ngày 1 tháng 1 năm 1970). Điều này dẫn đến một phạm vi ngày có thể biểu thị được khoảng 290 triệu năm trong quá khứ và tương lai

Lúc đầu, định nghĩa có thể trông giống dấu thời gian nhưng Dấu thời gian BSON và Ngày BSON khác nhau

MongoDB chính thức khuyến nghị lưu trữ ngày trong đối tượng Ngày BSON và tránh nếu có thể vì nó được sử dụng nội bộ

Đối tượng ngày MongoDB BSON so với Dấu thời gian

Lúc đầu, định nghĩa đối tượng ngày gốc BSON có thể giống như dấu thời gian. Nhưng chúng khác nhau

Dấu thời gian trong MongoDB chủ yếu dành cho mục đích nội bộ và chúng có giá trị 64 bit

32 bit quan trọng nhất là time_t, tính bằng giây kể từ kỷ nguyên UNIX. 32 bit ít quan trọng nhất là thứ tự tăng dần cho các hoạt động

Đối tượng Ngày BSON mili giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970 (Kỷ nguyên UNIX) với phạm vi ngày là 290 triệu năm trong quá khứ và tương lai

Ví dụ để chèn Ngày trong MongoDB

Trong các trường hợp thực tế, chúng tôi chủ yếu sử dụng MongoDB trong MERN Stack. Nếu đây là trường hợp của bạn thì bạn có thể dễ dàng chèn new Date() vào cơ sở dữ liệu

Đây là cú pháp shell MongoDB để chèn ngày

db.posts.insert({title: "How to Insert Date in MongoDB", time: new Date()})

Hoặc chúng ta cũng có thể sử dụng

db.posts.insert({title: "How to Insert Date in MongoDB", time: new ISODate()})

Lợi ích của việc sử dụng đối tượng ngày gốc là nó hỗ trợ nhiều phương thức hữu ích để chuyển đổi, rất hữu ích và giảm độ phức tạp

Truy vấn ngày MongoDB trả về ngày dưới dạng chuỗi hoặc đối tượng ngày, truy vấn ngày sẽ trả về ngày hiện tại dưới dạng chuỗi trong vỏ mongo. Ngày MongoDB sẽ trả về ngày hiện tại dưới dạng đối tượng ngày và trình bao mongo sẽ bao bọc đối tượng ngày bằng trình trợ giúp cô lập trong MongoDB. Chúng ta có thể chỉ định ngày cụ thể bằng cách chuyển ngày dưới dạng chuỗi ngày ISO-8601 và chuỗi này được sử dụng với phạm vi từ 0 đến 9999 cho hàm date() mới trong MongoDB

Truy vấn ngày hoạt động như thế nào trong MongoDB?

  • Chúng ta có thể sử dụng lệnh date() để lấy ngày ở dạng chuỗi trong truy vấn mà không cần từ khóa new hoặc trình bao MongoDB
  • Trong khi tạo một đối tượng ngày mới, chúng ta có thể chỉ định đối tượng ngày như sau
  • Truy vấn ngày tháng trong MongoDB sẽ lưu trữ bên trong giá trị số nguyên 64 bit biểu thị số mili giây và UNIX sử dụng nó từ ngày 1 tháng 1 năm 1970
  • Đối tượng ngày MongoDB lưu trữ 64 bit, nhưng nó sẽ không lưu trữ tất cả các phiên bản và hoạt động của cơ sở dữ liệu để hỗ trợ 64 bit
  • Chúng ta có thể sử dụng ngày dưới dạng chuỗi và chúng ta cũng có thể sử dụng ngày làm phương thức và đối tượng trong MongoDB
  • Trong MongoDB, chúng ta có thể chuyển đổi đối tượng ngày thành chuỗi thành định dạng được chỉ định. Có sẵn các toán tử khác nhau cho một ngày thành một chuỗi trong MongoDB
  • Có hai cách có sẵn trong MongoDB để lưu trữ ngày giờ là new Date() và new ISODate()
  • Ở cách tiếp cận đầu tiên, chúng ta có thể sử dụng đối tượng ngày tháng trong MongoDB như javascript. Đối tượng hoặc phương thức ngày là phương pháp tốt nhất để lưu trữ ngày hoặc giờ trong MongoDB
  • Trong cách tiếp cận thứ hai, chúng ta có thể sử dụng phương thức ISODate để lưu trữ ngày hoặc giờ trong MongoDB
  • MongoDB không hỗ trợ ngày không có định dạng múi giờ. Cách khác để lưu trữ ngày không có múi giờ là sử dụng hai loại biểu diễn nhật ký
  • First is millisecond and second is (). These are the ways that are available in MongoDB to store the date without time zone in MongoDB.
  • Chúng tôi đã sử dụng chức năng ISODate trong MongoDB;
  • ISODate trong MongoDB cung cấp một cách thuận tiện để biểu thị ngày trong MongoDB
  • Định dạng ngày chuỗi được sử dụng để lưu trữ chuỗi ở định dạng ngày. Điều này được sử dụng để lưu trữ ngày dưới dạng một chuỗi đơn giản ở định dạng con người có thể đọc được
  • Trong khi lưu trữ ngày ở định dạng chuỗi, nó rất dễ hiển thị, trong khi lưu trữ ngày ở định dạng chuỗi, không cần phải xử lý bằng cách sử dụng cùng một
  • Ngoài ra, trong khi lưu trữ ngày ở định dạng chuỗi, có thể dễ dàng chuyển đổi nó sang bất kỳ nền tảng hoặc định dạng nào khác. Nhưng thật khó để xác định định dạng ngày trong khi lưu trữ nó ở định dạng chuỗi

Định dạng ngày khác nhau trong MongoDB

Đưa ra bên dưới là định dạng ngày và mỗi định dạng trả về một phiên bản ISODate kết quả

  • new Date ()
  • new Date ()
  • new Date ()
  • new Date(“”)

1. new Date ()

  • Một phần nghìn giây là một số nguyên và nó chỉ định số phần nghìn giây. Milliseconds xác định giá trị số nguyên được sử dụng định dạng ngày trong MongoDB
  • Mili giây sẽ chuyển đổi ngày thành định dạng ngày tiêu chuẩn
  • Ví dụ dưới đây cho thấy chuyển đổi mili giây thành định dạng ngày. Trong ví dụ dưới đây, chúng tôi đã hiển thị hai ví dụ. Trong ví dụ đầu tiên, chúng tôi đã sử dụng đầu ra 1234567890 mili giây của mili giây này là 1970-01-15 và trong ví dụ thứ hai, chúng tôi đã sử dụng đầu ra 0987654321 mili giây của mili giây này là 1970-01-12

Ví dụ

Mã số

Bắt đầu khóa học khoa học dữ liệu miễn phí của bạn

Hadoop, Khoa học dữ liệu, Thống kê và những thứ khác

new Date(1234567890)

new Date(0987654321)

Gói khoa học dữ liệu tất cả trong một(360+ khóa học, hơn 50 dự án)

Ngày được thể hiện như thế nào trong mongodb?
Ngày được thể hiện như thế nào trong mongodb?
Ngày được thể hiện như thế nào trong mongodb?
Ngày được thể hiện như thế nào trong mongodb?

Ngày được thể hiện như thế nào trong mongodb?
Ngày được thể hiện như thế nào trong mongodb?
Ngày được thể hiện như thế nào trong mongodb?
Ngày được thể hiện như thế nào trong mongodb?

Giá
Xem các khóa học

Hơn 360 khóa học trực tuyến. hơn 50 dự án. Hơn 1500 giờ. Giấy chứng nhận có thể kiểm chứng. Truy cập trọn đời
4. 7 (86.584 xếp hạng)

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

2. new Date ()

  • Định dạng này xác định năm, tháng và ngày ở định dạng đầy đủ, nó cũng sẽ hiển thị giờ, phút và giây ở định dạng đầy đủ
  • Trong ví dụ dưới đây, chúng tôi đã sử dụng ngày là (“2020-05-15T12. 05. 45”), và đầu ra của việc sử dụng ngày này là (“2020-05-15T06. 35. 45Z”)

Ví dụ

Mã số

new Date("2020-05-15T12:05:45")

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

3. new Date ()

  • Định dạng này được định nghĩa là năm, tháng và ngày ở định dạng đầy đủ
  • Trong ví dụ bên dưới, chúng tôi đã sử dụng ngày là (“2020-05-15”) và kết quả của việc sử dụng ngày này là (“2020-05-15T00. 00. 00Z”)

Ví dụ

Mã số

new Date("2020-05-15")

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

4. new Date(“”)

  • Định dạng này xác định năm, tháng và ngày ở định dạng đầy đủ, nó cũng hiển thị giờ, phút và giây ở định dạng đầy đủ
  • Trong ví dụ dưới đây, chúng tôi đã sử dụng ngày là (“2020-05-15T12. 05. 45Z”), và đầu ra của việc sử dụng ngày này là (“2020-05-15T06. 35. 45Z”)

Ví dụ

Mã số

new Date("2020-05-15T12:05:45Z")

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

Ví dụ về truy vấn ngày MongoDB

Dưới đây là các ví dụ về MongoDB Date Query

Ví dụ 1

Để lưu trữ ngày bằng định dạng Date() mới trong MongoDB

Trong ví dụ dưới đây, chúng tôi đã sử dụng đối tượng Date() mới trong MongoDB. Chúng tôi đã sử dụng bộ sưu tập thử nghiệm trong khi sử dụng đối tượng ngày tháng trong MongoDB

Mã số

________số 8_______

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

Ví dụ #2

Để lưu trữ ngày bằng định dạng ISODate() mới trong MongoDB

Trong ví dụ dưới đây, chúng tôi đã sử dụng đối tượng ISODate() mới trong MongoDB. Chúng tôi đã sử dụng bộ sưu tập test1 trong khi sử dụng đối tượng ngày tháng trong MongoDB

Mã số

db.test1.insertOne ({"Id":"1","Date":new ISODate()});
db.test1.find ()

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

Ví dụ #3

Sử dụng phương thức Date() trong MongoDB

Trong ví dụ dưới đây, chúng tôi đã sử dụng hàm ngày

Mã số

Date ()

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

Ví dụ #4

Sử dụng một phương thức Date() mới trong MongoDB

Trong ví dụ dưới đây, chúng tôi đã sử dụng hàm ngày

Mã số

new Date ()

đầu ra

Ngày được thể hiện như thế nào trong mongodb?

Phần kết luận

Truy vấn ngày được sử dụng để trả về ngày dưới dạng truy vấn hoặc chuỗi. Về cơ bản, có hai cách để lưu trữ ngày, tôi. e. ngày () và ISODate (). Định dạng ngày chuỗi được sử dụng để lưu trữ chuỗi ở định dạng ngày trong khi lưu trữ ngày ở định dạng chuỗi, nó rất dễ hiển thị

Bài viết được đề xuất

Đây là hướng dẫn về MongoDB Date Query. Ở đây chúng ta thảo luận về phần giới thiệu của MongoDB Date Query, truy vấn ngày hoạt động như thế nào với các định dạng ngày khác nhau trong MongoDB và các ví dụ. Bạn cũng có thể xem các bài viết sau để tìm hiểu thêm –

Ngày được viết trong MongoDB như thế nào?

Bạn có thể chỉ định một ngày cụ thể bằng cách chuyển chuỗi ngày theo tiêu chuẩn ISO-8601 với một năm trong phạm vi bao gồm từ 0 đến 9999 cho hàm tạo Date() mới hoặc hàm ISODate() . Các chức năng này chấp nhận các định dạng sau. new Date(". These functions accept the following formats: new Date("") returns the ISODate with the specified date.

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

MongoDB sẽ lưu trữ thông tin ngày và giờ bằng UTC trong nội bộ, nhưng có thể dễ dàng chuyển đổi sang các múi giờ khác tại thời điểm truy xuất khi cần. Bởi vì điều này chủ yếu được triển khai để giúp điều phối các quy trình nội bộ như sao chép và phân đoạn, có lẽ bạn không nên sử dụng điều này trong logic của ứng dụng của riêng mình

Làm cách nào để kiểm tra ngày trong MongoDB?

Chúng ta có thể sử dụng lệnh date () để lấy ngày ở dạng chuỗi trong truy vấn mà không cần từ khóa new hoặc trình bao MongoDB.

Định dạng ngày mặc định trong MongoDB là gì?

Định dạng ngày MongoDB yyyy-mm-dd .