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

MongoDB 집계를 사용하여 NAME 필드에서 중복 이름의 빈도를 계산하시겠습니까?

<시간/>

빈도를 계산하려면aggregate()에서 $group으로 그룹화하십시오. 문서로 컬렉션을 만들자 −

> db.demo635.insertOne({이름:"크리스"});{ "승인됨" :true, "insertedId" :ObjectId("5e9c10f06c954c74be91e6cc")}> db.demo635.insertOne({이름:"David });{ "승인됨":true, "insertedId":ObjectId("5e9c10f46c954c74be91e6cd")}> db.demo635.insertOne({이름:"David"});{ "승인됨":true, "insertedId":ObjectId "{5e9c10f66c954c74be91e6ce")}> db.demo635.insertOne({이름:"크리스"});{ "확인됨":true, "insertedId":ObjectId("5e9c10f86c954c74be91e5db.insertNamede" 밥"});{ "승인됨" :true, "insertedId" :ObjectId("5e9c10fb6c954c74be91e6d0")}> db.demo635.insertOne({이름:"Chris"});{ "승인됨" :true, "insertedId" :ObjectId("5e9c10fc6c954c74be91e6d1")}

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

> db.demo635.find();

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

{ "_id":ObjectId("5e9c10f06c954c74be91e6cc"), "이름":"크리스" }{ "_id":ObjectId("5e9c10f46c954c74be91e6cd"), "이름":"데이비드":ObjectId("_id" "5e9c10f66c954c74be91e6ce"), "이름":"데이빗" }{ "_id":ObjectId("5e9c10f86c954c74be91e6cf"), "이름":"크리스" }{ "_id":"이름":"크리스" }{ "_id":ObjectId("5e9c95) 밥" }{ "_id" :ObjectId("5e9c10fc6c954c74be91e6d1"), "이름" :"크리스" }

다음은 MongoDB 집계 프레임워크를 사용하여 빈도를 계산하는 쿼리입니다. -

> db.demo635.aggregate([... { $unwind:"$Name" },... { $group:{ "_id":"$Name", TotalFrequency:{ $sum:1 } } }... ]... );

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

{ "_id" :"데이비드", "TotalFrequency" :2 }{ "_id" :"밥", "TotalFrequency" :1 }{ "_id" :"크리스", "TotalFrequency" :3 }