Nhóm đếm MongoDB theo ngày
Bạn có thể sử dụng khung tổng hợp để nhóm theo ngày trong MongoDB. Trước tiên chúng ta hãy tạo một bộ sưu tập với một số tài liệu. Truy vấn để tạo một bộ sưu tập với các tài liệu như sau Show
> db.groupByDateDemo.insertOne({"UserLoginDateTime":new ISODate()}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ee4df6fd07954a4890695") } > db.groupByDateDemo.insertOne({"UserLoginDateTime":new ISODate("2019-01-31 15:20:09.234Z")}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ee51c6fd07954a4890696") } > db.groupByDateDemo.insertOne({"UserLoginDateTime":new ISODate("2017-04-21 16:12:13.240Z")}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ee5336fd07954a4890697") } > db.groupByDateDemo.insertOne({"UserLoginDateTime":new ISODate("2016-05-25 19:11:21.130Z")}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ee54b6fd07954a4890698") } > db.groupByDateDemo.insertOne({"UserLoginDateTime":new ISODate("2016-05-25 19:11:21.130Z")}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ee8de6fd07954a4890699") } > db.groupByDateDemo.insertOne({"UserLoginDateTime":new ISODate()}); { "acknowledged" : true, "insertedId" : ObjectId("5c6ee8e76fd07954a489069a") } 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(). Truy vấn như sau > db.groupByDateDemo.find().pretty(); Sau đây là đầu ra { "_id" : ObjectId("5c6ee4df6fd07954a4890695"), "UserLoginDateTime" : ISODate("2019-02-21T17:50:23.076Z") } { "_id" : ObjectId("5c6ee51c6fd07954a4890696"), "UserLoginDateTime" : ISODate("2019-01-31T15:20:09.234Z") } { "_id" : ObjectId("5c6ee5336fd07954a4890697"), "UserLoginDateTime" : ISODate("2017-04-21T16:12:13.240Z") } { "_id" : ObjectId("5c6ee54b6fd07954a4890698"), "UserLoginDateTime" : ISODate("2016-05-25T19:11:21.130Z") } { "_id" : ObjectId("5c6ee8de6fd07954a4890699"), "UserLoginDateTime" : ISODate("2016-05-25T19:11:21.130Z") } { "_id" : ObjectId("5c6ee8e76fd07954a489069a"), "UserLoginDateTime" : ISODate("2019-02-21T18:07:35.208Z") } Đây là truy vấn để nhóm theo ngày trong MongoDB > db.groupByDateDemo.aggregate([ .. { $group: { .. _id: { .. $add: [ .. { $dayOfYear: "$UserLoginDateTime"}, .. { $multiply: .. [400, {$year: "$UserLoginDateTime"}] .. } .. ]}, .. NumberOfTimes: { $sum: 1 }, .. f: {$min: "$UserLoginDateTime"} .. } .. }, .. { $sort: {_id: 1} }, .. { $limit: 10 }, .. { $project: { date: "$f", NumberOfTimes: 1, _id: 0} } .. ]); Sau đây là đầu ra { "NumberOfTimes" : 2, "date" : ISODate("2016-05-25T19:11:21.130Z") } { "NumberOfTimes" : 1, "date" : ISODate("2017-04-21T16:12:13.240Z") } { "NumberOfTimes" : 1, "date" : ISODate("2019-01-31T15:20:09.234Z") } { "NumberOfTimes" : 2, "date" : ISODate("2019-02-21T17:50:23.076Z") } MongoDB là Cơ sở dữ liệu NoSQL mã nguồn mở nổi tiếng được viết bằng C++. MongoDB là Cơ sở dữ liệu hướng tài liệu sử dụng các tài liệu giống JSON với Lược đồ động để lưu trữ dữ liệu. Điều đó có nghĩa là bạn có thể lưu trữ các bản ghi của mình mà không phải lo lắng về Cấu trúc dữ liệu, số lượng trường hoặc loại trường được sử dụng để lưu trữ giá trị. Các tài liệu trong MongoDB tương tự như các đối tượng JSON Bạn có thể thay đổi cấu trúc của các bản ghi (mà MongoDB gọi là Tài liệu) bằng cách thêm các trường mới hoặc xóa các trường hiện có. Tính năng này của MongoDB cho phép bạn dễ dàng biểu diễn các Mối quan hệ phân cấp, Mảng lưu trữ và các cấu trúc dữ liệu phức tạp khác Ngày nay, nhiều gã khổng lồ công nghệ, bao gồm Facebook, eBay, Adobe và Google, sử dụng MongoDB để lưu trữ lượng lớn dữ liệu của họ. Các tính năng chính của MongoDBNguồn hình ảnhMongoDB cung cấp một loạt các tính năng độc đáo giúp nó trở thành một giải pháp tốt hơn so với các cơ sở dữ liệu thông thường khác. Một số tính năng này được thảo luận dưới đây
Đơn giản hóa MongoDB ETL bằng cách sử dụng đường dẫn dữ liệu không mã của HevoDữ liệu Hevo là Đường ống dữ liệu không có mã cung cấp giải pháp được quản lý hoàn toàn để thiết lập Tích hợp dữ liệu cho hơn 100 nguồn dữ liệu (bao gồm hơn 40 nguồn miễn phí) và sẽ cho phép bạn tải trực tiếp dữ liệu từ các nguồn như MongoDB đến Kho dữ liệu hoặc Đích . Nó sẽ tự động hóa luồng dữ liệu của bạn trong vài phút mà không cần viết bất kỳ dòng mã nào. Kiến trúc chịu lỗi của nó đảm bảo rằng dữ liệu của bạn được an toàn và nhất quán. Hevo cung cấp cho bạn một giải pháp thực sự hiệu quả và hoàn toàn tự động để quản lý dữ liệu theo thời gian thực và luôn có sẵn dữ liệu để phân tích. Bắt đầu với Hevo miễn phíCùng điểm qua một số tính năng nổi bật của Hevo
Làm cách nào để sử dụng Phương thức tổng hợp nhóm MongoDB?Nguồn hình ảnhA) Cú pháp chung của MongoDB Groupby Aggregation Method
B) Các tham số liên quan đến MongoDB Groupby AggregationCác tham số liên quan đến mô tả cú pháp của MongoDB Groupby Aggregation Method như sau
C) Ví dụ khái niệm. Sử dụng MongoDB Groupby AggregationĐể hiểu hoạt động của phương thức MongoDB Groupby Aggregation, hãy tạo một mẫu có tên sales với dữ liệu sau
Bây giờ, giả sử bạn muốn áp dụng chức năng MongoDB Groupby để tính Tổng số tiền bán hàng, Số lượng bán hàng trung bình và Số lượng bán hàng cho mỗi ngày trong năm 2014. Đoạn mã sau sẽ giúp bạn trích xuất thông tin cần thiết
Ở đâu
đầu ra________số 8Phần kết luậnBài viết này đã giới thiệu cho các bạn về MongoDB cùng với các tính năng nổi bật mà nó mang lại. Hơn nữa, nó đã giới thiệu cho bạn phương thức MongoDB Groupby Aggregation cùng với các truy vấn mẫu và cú pháp của nó. Khi doanh nghiệp của bạn bắt đầu phát triển, dữ liệu được tạo theo cấp số nhân trên tất cả các ứng dụng SaaS, Cơ sở dữ liệu và các nguồn khác của công ty bạn Để đáp ứng nhu cầu lưu trữ và xử lý dữ liệu ngày càng tăng này, bạn cần đầu tư một phần băng thông kỹ thuật của mình để Tích hợp dữ liệu từ tất cả các nguồn, Làm sạch & Chuyển đổi dữ liệu và cuối cùng tải dữ liệu đó vào Kho dữ liệu trên đám mây để có thêm Phân tích kinh doanh. Tất cả những thách thức này có thể được xử lý hiệu quả bằng công cụ ETL dựa trên đám mây như Hevo Data Ghé thăm trang web của chúng tôi để khám phá HevoHevo Data, Đường ống dữ liệu không mã cung cấp cho bạn giải pháp nhất quán và đáng tin cậy để quản lý truyền dữ liệu giữa nhiều nguồn khác nhau như MongoDB và nhiều Điểm đến mong muốn khác nhau, với một vài cú nhấp chuột. Hevo Data với khả năng tích hợp mạnh mẽ với hơn 100 nguồn (bao gồm hơn 40 nguồn miễn phí) cho phép bạn không chỉ xuất dữ liệu từ các nguồn dữ liệu mong muốn và tải dữ liệu đó đến đích bạn chọn mà còn chuyển đổi và làm phong phú dữ liệu của bạn để phân tích. Bạn muốn thử Hevo? . Bạn cũng có thể xem giá cạnh tranh nhất sẽ giúp bạn chọn gói phù hợp cho nhu cầu kinh doanh của mình Chia sẻ với chúng tôi kinh nghiệm của bạn khi tìm hiểu về MongoDB Group By Aggregation Method trong phần bình luận bên dưới Làm cách nào để sử dụng số lượng trong nhóm trong MongoDB?Chúng ta có thể sử dụng đoạn mã sau để nhóm theo trường 'vị trí' và đếm số lần xuất hiện của từng vị trí. . Vị trí 'Chuyển tiếp' xảy ra 1 lần Vị trí 'Guard' xảy ra 3 lần Vị trí 'Trung tâm' xuất hiện 1 lần Làm cách nào để đếm các bản ghi trong MongoDB?count() được sử dụng để trả về số lượng tài liệu khớp với truy vấn find() . db. thu thập. Phương thức đếm () không thực hiện thao tác tìm () mà thay vào đó đếm và trả về số lượng kết quả khớp với truy vấn.
$root trong MongoDB là gì?Tài nguyên gốc là điểm bắt đầu cho API Trình quản lý đám mây . Từ đây, bạn có thể duyệt qua các liên kết để truy cập tất cả các tài nguyên API khác.
Chúng ta có thể sử dụng nhóm theo trong MongoDB không?MongoDB group by được sử dụng để nhóm dữ liệu từ bộ sưu tập, chúng ta có thể đạt được nhóm theo mệnh đề bằng hàm tổng hợp và phương thức nhóm trong MongoDB . Mặc dù sử dụng hàm tổng hợp với các hoạt động truy vấn nhóm theo mệnh đề nhanh hơn như truy vấn thông thường, nhưng về cơ bản, hàm tổng hợp được sử dụng trong nhiều điều kiện. |