Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

필드를 결합하거나 병합한 다음 계산하는 MongoDB 집계?

<시간/>

필드를 결합하거나 병합한 다음 카운트를 수행하려면 $sum 및 $sort와 함께 $group을 사용합니다. 문서로 컬렉션을 만들자 −

> db.demo647.insertOne({"Subject":"MySQL"});{ "승인됨" :true, "insertedId" :ObjectId("5e9c86316c954c74be91e6ee")}> db.demo647.insert"One({"Subject" :"MongoDB"});{ "확인됨" :true, "insertedId" :ObjectId("5e9c86356c954c74be91e6ef")}> db.demo647.insertOne({"제목":"MySQL"});{ "확인됨" :true, "insertedId":ObjectId("5e9c86376c954c74be91e6f0")}> db.demo647.insertOne({"Subject":"SQL Server"});{ "확인된"6:true, "insertedId":ObjectId("5e9c954ec> .demo647.insertOne({"Subject":"MongoDB"});{ "승인된" :true, "insertedId" :ObjectId("5e9c86436c954c74be91e6f2")}> db.demo647.insertOne({"Subject":"});{ "승인됨" :true, "insertedId" :ObjectId("5e9c864b6c954c74be91e6f3")}> db.demo647.insertOne({"제목":"MongoDB"});{ "승인됨" :true, "insertedI :ObjectId("5e9c86c16c954c74be91e6f4")}

find() 메서드를 사용하여 컬렉션의 모든 문서 표시 -

> db.demo647.find();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" :ObjectId("5e9c86316c954c74be91e6ee"), "제목" :"MySQL" }{ "_id" :ObjectId("5e9c86356c954c74be91e6ef"), "제목" :"(MongoDB" :"_id":개체 "5e9c86376c954c74be91e6f0"), "제목":"MySQL" }{ "_id":ObjectId("5e9c86406c954c74be91e6f1"), "제목":"SQL 서버" }{ "ebec6f":ObjectId("4c6f1") "MongoDB" }{ "_id" :ObjectId("5e9c864b6c954c74be91e6f3"), "제목" :"PL/SQL" }{ "_id" :ObjectId("5e9c86c16c954c74be91e6f4"), "DBpre제" :"MongoDB" 

다음은 필드를 결합하거나 병합한 다음 계산하는 쿼리입니다 -

> db.demo647.aggregate([ { "$group":{ "_id":"$Subject", "COUNT":{ "$sum":1 } } }, { "$sort":{ " COUNT":-1 } }, { "$limit":2 } ] );

이것은 다음과 같은 출력을 생성합니다 -

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