Mongodb tổng hợp phù hợp với ngày hiện tại

ISODate() cho phép bạn mô tả trực quan một ngày trong MongoDB dưới dạng Chuỗi trong khi cho phép bạn sử dụng truy vấn ngày và lập chỉ mục. Lập trình viên có thể phân tích các đối tượng ngày một cách nhanh chóng và trực quan bằng cách đặt Chuỗi ngày ISO trong một hàm thay vì chuyển đổi nó từ dấu thời gian Unix thành Chuỗi thời gian

Hôm nay, chúng ta sẽ khám phá cách tạo Ngày MongoDB lớn hơn truy vấn để truy xuất bản ghi dựa trên dấu thời gian hoặc phạm vi ngày. Các ví dụ về truy vấn ngày MongoDB sẽ được hiển thị, chẳng hạn như ngày MongoDB lớn hơn thời gian hoặc ngày, v.v.

Toán tử lớn hơn ($gt) nằm trong số các toán tử so sánh của MongoDB. Sau đó, toán tử lớn hơn $gt được sử dụng để khám phá các tài liệu trong đó giá trị của một trường lớn hơn (>) giá trị được đặt. Tùy thuộc vào nhu cầu của bạn, bạn có thể sử dụng toán tử này trong các chức năng như định vị, cập nhật, v.v. ”

Cú pháp của một ngày lớn hơn truy vấn

Thông tin dưới đây trình bày cách sử dụng cú pháp này trong tập hợp dữ liệu trong thực tế

db. bộ sưu tập_name. tìm ({
    field_name. {
        $gt . ISODate ("date") ,
        $lt: ISODate("date")
    }
})

Truy vấn này trả về tất cả các mục trong bộ sưu tập có tên trường lớn hơn hoặc bằng ngày được truyền trong phương thức ISODate nhưng nhỏ hơn hoặc bằng ngày được phương thức ISODate trả về. Ở đây $gt biểu thị ký hiệu “lớn hơn” và $lt biểu thị ký hiệu “nhỏ hơn”. Các bước trước rất đơn giản để làm theo. Có một vài thay đổi nhỏ giữa các hướng này, mặc dù

Cách tạo ngày lớn hơn truy vấn MongoDB trong Ubuntu 20. 04

Phần này trình bày cách tạo ngày MongoDB lớn hơn truy vấn trả về bản ghi tùy thuộc vào dấu thời gian. Ngày MongoDB lớn hơn thời gian hoặc ngày được bao gồm trong các ví dụ về truy vấn ngày trong MongoDB

Để hiểu rõ hơn về khái niệm này, hãy tạo một bộ sưu tập dữ liệu bằng cách chèn tài liệu. Truy vấn để tạo một bộ sưu tập bao gồm một bản ghi như sau

Mongodb tổng hợp phù hợp với ngày hiện tại

Đầu tiên, chúng tôi đã thiết lập một cơ sở dữ liệu dưới dạng một “cửa hàng” bên trong vỏ mongo. Sau đó, chúng tôi đã đặt tên cho bộ sưu tập của mình là “Mart” bên trong truy vấn tạo bộ sưu tập. Khi bộ sưu tập của chúng tôi được tạo, chúng tôi đã sử dụng truy vấn sau để tạo tài liệu của bộ sưu tập

Mongodb tổng hợp phù hợp với ngày hiện tại

Trong hình trên, chúng tôi đã chèn ba tài liệu bên trong bộ sưu tập “Mart” với truy vấn insertMany. Thay vì chèn từng bản ghi một, chúng tôi có thể sử dụng truy vấn này để nhập tất cả bản ghi cùng một lúc trong bộ sưu tập đã chỉ định. Sau đó, cuối cùng, câu lệnh xác nhận đã chèn ID của tài liệu cho biết tài liệu đã được chèn thành công vào bộ sưu tập “Mart. ”

Bây giờ, hãy sử dụng các tài liệu này của bộ sưu tập theo ngày lớn hơn truy vấn trong trình bao MongoDB. Hãy thực hiện truy vấn này trong ví dụ được triển khai bên dưới

Ví dụ 1. Tìm bản ghi giữa hai ngày trong MongoDB trong Ubuntu 20. 04

Để tìm tất cả các tài liệu có tên trường nằm giữa hai ngày, chúng tôi đã chạy truy vấn sau

Mongodb tổng hợp phù hợp với ngày hiện tại

Chúng tôi đã sử dụng chức năng tìm kiếm ở đây và trong chức năng này, chúng tôi đã gọi một trường là “ngày” từ bộ sưu tập “Mart. ” Chúng tôi đã thực hiện thao tác lớn hơn và nhỏ hơn trên trường ngày bằng cách đưa ra hai ISODate khác nhau từ bộ sưu tập. Từ truy vấn này, chúng tôi thu được ISODate lớn hơn ngày “2022-03-12T00. 00. 00Z” và nhỏ hơn ngày “2022-03-12T00. 00. 00Z”

Truy vấn trên trả về kết quả giữa ISODate “lớn hơn” và “nhỏ hơn” ISODate trong snap shell MongoDB sau

Mongodb tổng hợp phù hợp với ngày hiện tại

Ví dụ #2. Tìm bản ghi lớn hơn ngày cụ thể trong MongoDB trong Ubuntu 20. 04

Chúng tôi đang sử dụng toán tử lớn hơn vào ngày cụ thể để tìm ngày từ tài liệu. Và từ đó, chúng tôi sẽ nhận được một ngày lớn hơn một ngày cụ thể trong truy vấn. Hãy chứng minh câu lệnh bằng cách thực hiện truy vấn trong MongoDB

Mongodb tổng hợp phù hợp với ngày hiện tại

chúng tôi có một db. siêu thị. tìm truy vấn bên trong mà chúng tôi đã chỉ định trường ngày. Trường ngày đã cung cấp toán tử “lớn hơn” là $gt và toán tử $gt đã được gán với ISODate “2022-02-12”. Nếu ISODate lớn hơn ngày này từ tài liệu, thì nó chỉ hiển thị những tài liệu đó

Truy vấn trên trả về hai tài liệu có ngày ISODate lớn hơn ngày được cung cấp cho toán tử $gt

Mongodb tổng hợp phù hợp với ngày hiện tại

Ví dụ #3. Truy xuất bản ghi dựa trên ngày trong MongoDB trong Ubuntu 20. 04

Chúng tôi đang truy xuất bản ghi từ bộ sưu tập, trong đó trường ngày khớp với ISODate được cung cấp trong truy vấn. Chúng tôi đã sử dụng toán tử lớn hơn bằng. Hãy xem xét ví dụ về việc sử dụng MongoDB để đưa ra truy vấn dựa trên ngày hiện tại

Mongodb tổng hợp phù hợp với ngày hiện tại

Trong truy vấn trên, chúng tôi có một trường ngày bên trong hàm tìm. Ngày đang 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

Mongodb tổng hợp phù hợp với ngày hiện tại

Phần kết luận

Bài viết này dựa trên ngày lớn hơn truy vấn trong MongoDB. Chúng ta đã bắt đầu với phần giới thiệu ngắn gọn về chức năng Date và toán tử $gt trong MongoDB được giải thích ngắn gọn. Ngoài ra, chúng tôi đã chỉ ra cú pháp của một ngày lớn hơn truy vấn. Bài viết này hướng dẫn rõ các bạn sử dụng phương thức Date(). Các truy vấn $gt và $gte cũng được mô tả chi tiết với các ví dụ. Việc sử dụng các đoạn mã để giải thích rõ cách truy xuất ngày phụ thuộc vào truy vấn cũng được thể hiện

Làm cách nào để có được ngày hiện tại trong tập hợp MongoDB?

Ngày hiện tại trong truy vấn MongoDB . Date() sẽ trả về ngày hiện tại dưới dạng chuỗi . Date() mới sẽ trả về ngày hiện tại là một đối tượng ngày và MongoDB bao phủ đối tượng Date bằng ISODate.

Làm cách nào để so sánh ngày trong tập hợp MongoDB?

Cách tìm tài liệu giữa hai ngày trong MongoDB. [{ "$match". { "ngày tạo ra". { "$gt". ISODate( "2022-01-01" ), "$lt". ISODate( "2022-02-10" ) } }}]); Các truy vấn trên trả về 1 bản ghi từ dữ liệu mẫu mà chúng tôi đã thêm.

Làm cách nào để truy vấn MongoDB với ngày hiện tại?

Ngày() .
Date() trả về ngày hiện tại dưới dạng chuỗi trong mongosh
new Date() trả về ngày hiện tại dưới dạng đối tượng Date. mongosh bao bọc đối tượng Date bằng trình trợ giúp ISODate. ISODate là trong UTC

Làm cách nào để chèn ngày hiện tại vào MongoDB?

một boolean true để đặt giá trị trường thành ngày hiện tại dưới dạng Ngày hoặc. một tài liệu { $type. "dấu thời gian" } hoặc { $type. "date" } chỉ định rõ ràng loại