Làm cách nào để truy vấn giữa các ngày trong MongoDB?
Trong bài viết này, vấn đề tìm kiếm một đối tượng giữa hai ngày được thảo luận ngắn gọn. Hơn nữa, các toán tử 0, 1, 2 và 3 được sử dụng cho mục đích này được giải thích chi tiết ngắn gọn Show
Phần này sẽ hướng dẫn bạn cách viết truy vấn Phạm vi ngày MongoDB để truy xuất dữ liệu dựa trên dấu thời gian hoặc phạm vi ngày. Ví dụ, truy vấn ngày trong MongoDB là ngày lớn hơn hoặc nhỏ hơn thời gian hoặc ngày Để thực hiện truy vấn trong MongoDB bằng phạm vi ngày, hãy sử dụng cú pháp cơ bản được mô tả bên dưới
Tất cả các mục trong bộ sưu tập có trường 4 lớn hơn hoặc bằng 5 nhưng nhỏ hơn hoặc bằng 6 sẽ được truy vấn này trả về. Các bước được nêu ở trên rất đơn giảnTuy nhiên, có một vài mâu thuẫn nhỏ trong các hướng này db.inventory.find( { quantity: { $gt: 20 } } ) 2 trong MongoDBcú pháp Bởi vì giá trị 8 lớn hơn (i. e. , 9) 0, 2 được chỉ định chọn những tài liệu đóĐối với hầu hết các loại dữ liệu, toán tử so sánh chỉ thực hiện so sánh trên các trường khi loại BSON khớp với loại của giá trị truy vấn. Tuy nhiên, loại dấu ngoặc của MongoDB cho phép so sánh giữa các BSON hạn chế Các ví dụ dưới đây sử dụng bộ sưu tập 2. Đây là cơ sở dữ liệu mẫu sẽ được sử dụng bên dưới trong tất cả các ví dụ
Khớp các trường tài liệuChọn tất cả các tài liệu trong bộ sưu tập 2 trong đó 4 lớn hơn 5
đầu ra Ví dụ bên dưới đặt trường 6 dựa trên so sánh 2 với một trường trong tài liệu được nhúng
đầu ra Hàm 8 này kiểm tra trường con 9 trong một tài liệu nhúng có tên là 0. Tài liệu đầu tiên tìm thấy một giá trị cho một 9 lớn hơn 2 và đặt giá trị cho 2Để điều chỉnh giá trị của trường 6 trong tất cả các tài liệu khi 4 lớn hơn 2, hãy sử dụng 5db.inventory.find( { quantity: { $gt: 20 } } ) 0 trong MongoDBcú pháp 0 chọn tài liệu có giá trị 8 lớn hơn hoặc bằng (i. e. 9) một giá trị nhất định (e. g. 0)Đối với hầu hết các loại dữ liệu, toán tử so sánh chỉ thực hiện so sánh trên các trường khi loại BSON khớp với loại của giá trị truy vấn. Tuy nhiên, loại dấu ngoặc của MongoDB cho phép so sánh giữa các BSON hạn chế Khớp các trường tài liệuChọn tất cả các tài liệu trong bộ sưu tập 2 với số lượng lớn hơn hoặc bằng 5
đầu ra Trường 6 được đặt bằng cách sử dụng so sánh 0 với trường trong tài liệu được nhúng trong ví dụ sau
đầu ra Hàm 8 này kiểm tra trường con 9 trong một tài liệu nhúng có tên là 0. 2 được thêm vào mỗi tài liệu khi 9 có giá trị lớn hơn hoặc bằng 2Sử dụng 8 để đặt giá trị của trường 6 chỉ trên trang đầu tiên khi 4 lớn hơn 2db.inventory.find( { quantity: { $gt: 20 } } ) 3 trong MongoDBcú pháp 3 chọn tài liệu có giá trị 8 nhỏ hơn (hoặc bằng) giá trị 0 đã chỉ địnhĐối với hầu hết các loại dữ liệu, toán tử so sánh chỉ thực hiện so sánh trên các trường khi loại BSON khớp với loại của giá trị truy vấn. Tuy nhiên, loại dấu ngoặc của MongoDB cho phép so sánh giữa các BSON hạn chế Khớp các trường tài liệuChọn tất cả tài liệu trong bộ sưu tập 2 với số lượng ít hơn 5
đầu ra Trường 6 sẽ được đặt dựa trên so sánh 3 với trường trong tài liệu được nhúng trong ví dụ sau
đầu ra Hàm 8 này kiểm tra trường con 9 trong một tài liệu nhúng có tên là 0. Khi giá trị của 4 nhỏ hơn 2, nó sẽ thêm 2 vào mỗi bản ghiSử dụng 8 để đặt giá trị của trường 6 chỉ trên trang đầu tiên khi 4 nhỏ hơn 2db.inventory.find( { quantity: { $gt: 20 } } ) 1 trong MongoDBcú pháp 1 chọn tài liệu có giá trị 8 nhỏ hơn hoặc bằng (i. e. 2) 0 được chỉ địnhĐối với hầu hết các loại dữ liệu, toán tử so sánh chỉ thực hiện so sánh trên các trường khi loại BSON khớp với loại của giá trị truy vấn. Tuy nhiên, loại dấu ngoặc của MongoDB cho phép so sánh giữa các BSON hạn chế Khớp các trường tài liệuXem xét ví dụ sau
Truy vấn này chọn tất cả các mục nhập trong bộ sưu tập 2 với giá trị trường số lượng nhỏ hơn hoặc bằng 5đầu ra Trường 6 được đặt bằng cách sử dụng so sánh 1 với trường trong tài liệu được nhúng trong ví dụ sau
đầu ra Hàm 5 này tìm trường con 9 trong một tài liệu nhúng có tên là 0. 2 được thêm vào mỗi chứng từ nếu 9 có giá trị nhỏ hơn hoặc bằng 5Khi 4 nhỏ hơn hoặc bằng 5, hãy sử dụng 8 để thay đổi giá trị của trường 6 chỉ trên trang đầu tiênThông tin sau đây giải thích cách áp dụng cú pháp này cho việc thu thập dữ liệu bằng các tài liệu đi kèm 0Sử dụng truy vấn bên dưới để tìm tất cả các tài liệu có trường 4 giữa hai ngày 1Truy vấn trên trả về các tài liệu sau như hình bên dưới 2Sử dụng truy vấn bên dưới để tìm tất cả các tài liệu có trường 4 được đặt thành ngày sau ngày đã chỉ định 3Truy vấn trên trả về các tài liệu sau 4Sử dụng truy vấn bên dưới để tìm tất cả các tài liệu có trường 4 được đặt thành trước một ngày cụ thể 5Truy vấn trên trả về các tài liệu sau 6Hãy xem cách trả về một truy vấn tùy thuộc vào ngày bằng MongoDB Tạo một bộ sưu tập có tên là 9 bằng cách sử dụng tài liệu để nắm bắt ý tưởng tốt hơn. Sau đây là truy vấn để tạo bộ sưu tập chứa bản ghi 7Sử dụng chức năng 00, tất cả các tài liệu trong một bộ sưu tập sẽ được chọn. Sau đây là truy vấn cho điều này 8Truy vấn trên sẽ trả về các tài liệu sau, như thể hiện trong ảnh chụp màn hình bên dưới Sau đây là truy vấn trả về dựa trên ngày. Hồ sơ có ngày tạo sau ngày 01 sẽ được gọi là 9Truy vấn này trả về các tài liệu sau, như được hiển thị trong ảnh chụp màn hình bên dưới Vì vậy, thông qua sự trợ giúp của bài viết này, người dùng đã biết thông tin về cách sử dụng phương pháp 02. Ví dụ giải thích ngắn gọn các lệnh 0 và 1
Làm cách nào để lấy dữ liệu giữa hai ngày trong MongoDB?Bạn có thể sử dụng Truy vấn cho Phạm vi khi bạn muốn lấy dữ liệu giữa hai ngày. Đây là về truy vấn dữ liệu cho một loạt các giá trị.
Làm cách nào để truy vấn theo ngày trong MongoDB?MongoDB date sẽ trả về ngày hiện tại dưới dạng đối tượng ngày và trình bao mongo sẽ 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.
Làm cách nào để truy vấn lớn hơn ngày trong MongoDB?Ngày là sử dụng toán tử lớn hơn bằng “$gte” và chỉ định toán tử $gte là ISODate bằng cách sử dụng từ khóa mới . Sau đó, phương thức đẹp đó được sử dụng ở cuối truy vấn để hiển thị kết quả ở định dạng dễ dàng hơn. Ngày được trả về bởi truy vấn trên được hiển thị trong ảnh chụp nhanh sau.
Làm cách nào để so sánh ngày trong la bàn MongoDB?Bằng cách chỉ định loại Ngày trong cả start_date và toán tử so sánh $gt , Compass thực hiện phép so sánh lớn hơn theo thứ tự thời gian, trả lại tài liệu có start_date muộn hơn ngày 05-01-2017. |