Trong MongoDB tổng hợp (), sử dụng nhóm $ và tập hợp tổng hợp. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -
> db.demo616.insertOne ({"details":{"Name":"Chris", "Age":21}}); {"Recog":true, "insertId":ObjectId ("5e99bfac65492f6c60d00283") }> db.demo616.insertOne ({"details":{"Name":"Chris", "Age":22}}); {"Recognition":true, "insertId":ObjectId ("5e99bfb065492f6c60d00284")}> db.demo616.insertOne ({"details":{"Name":"Bob", "Age":23}}); {"Recognition":true, "insertId":ObjectId ("5e99bfb865492f6c60d00285")}> db. demo616.insertOne ({"details":{"Name":"Sam", "Age":21}}); {"Recognition":true, "insertId":ObjectId ("5e99bfbd65492f6c60d00286")}> db.demo616. insertOne ({"details":{"Name":"Chris", "Age":24}}); {"inherit":true, "insertId":ObjectId ("5e99bfc165492f6c60d00287")}
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 () -
> db.demo616.find ();
Điều này sẽ tạo ra kết quả sau -
{"_id":ObjectId ("5e99bfac65492f6c60d00283"), "details":{"Name":"Chris", "Age":21}} {"_id":ObjectId ("5e99bfb065492f6c60d00284"), "chi tiết" :{"Name":"Chris", "Age":22}} {"_id":ObjectId ("5e99bfb865492f6c60d00285"), "details":{"Name":"Bob", "Age":23}} { "_id":ObjectId ("5e99bfbd65492f6c60d00286"), "chi tiết":{"Tên":"Sam", "Tuổi":21}} {"_id":ObjectId ("5e99bfc165492f6c60d00287"), "chi tiết":{"Tên ":" Chris "," Tuổi ":24}}
Sau đây là truy vấn để tổng hợp bộ sưu tập và nhóm theo số lượng trường -
> db.demo616.aggregate (... [... {... $ group:{_ id:"$ details.Name", Tổng cộng:{$ sum:1}}} ...] .. .);
Điều này sẽ tạo ra kết quả sau -
{"_id":"Sam", "Total":1} {"_id":"Bob", "Total":1} {"_id":"Chris", "Total":3}