Computer >> Máy Tính >  >> Lập trình >> MongoDB

Tổng hợp MongoDB để kết hợp hoặc hợp nhất các trường rồi đếm?

Để kết hợp hoặc hợp nhất các trường rồi thực hiện đếm, hãy sử dụng $ group cùng với $ sum và $ sort. Hãy để chúng tôi tạo một bộ sưu tập với các tài liệu -

> db.demo647.insertOne ({"Chủ đề":"MySQL"}); {"công nhận":true, "insertId":ObjectId ("5e9c86316c954c74be91e6ee")}> db.demo647.insertOne ({"Chủ đề" :"MongoDB"}); {"Recognition":true, "insertId":ObjectId ("5e9c86356c954c74be91e6ef")}> db.demo647.insertOne ({"Subject":"MySQL"}); {"inherit":true, "insertId":ObjectId ("5e9c86376c954c74be91e6f0")}> db.demo647.insertOne ({"Subject":"SQL Server"}); {"Recognition":true, "insertId":ObjectId ("5e9c86406c954c74be91e6f1")}> db74be91e6f1 .demo647.insertOne ({"Subject":"MongoDB"}); {"nition ":true," insertId ":ObjectId (" 5e9c86436c954c74be91e6f2 ")}> db.demo647.insertOne ({" Subject ":" PL / SQL {"" :ObjectId ("5e9c86c16c954c74be91e6f4")} 

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.demo647.find (); 

Điều này sẽ tạo ra kết quả sau -

 {"_id":ObjectId ("5e9c86316c954c74be91e6ee"), "Chủ đề":"MySQL"} {"_id":ObjectId ("5e9c86356c954c74be91e6ef"), "Chủ đề":"MongoDB"} {"_id":ObjectId ( "5e9c86376c954c74be91e6f0"), "Chủ đề":"MySQL"} {"_id":ObjectId ("5e9c86406c954c74be91e6f1"), "Chủ đề":"Máy chủ SQL"} {"_id":ObjectId ("5e9c86436c954 "74" "MongoDB"} {"_id":ObjectId ("5e9c864b6c954c74be91e6f3"), "Chủ đề":"PL / SQL"} {"_id":ObjectId ("5e9c86c16c954c74be91e6f4"), "Chủ đề":"MongpreoDB"} 
 Sau đây là truy vấn để kết hợp hoặc hợp nhất các trường rồi đếm - 

> db.demo647.aggregate ([{"$ group":{"_id":"$ Subject", "COUNT":{"$ sum":1}}}, {"$ sort":{" COUNT ":-1}}, {" $ giới hạn ":2}]); 

Điều này sẽ tạo ra kết quả sau -

 {"_id":"MongoDB", "COUNT":3} {"_id":"MySQL", "COUNT":2}