집계 프레임워크를 사용하여 MongoDB에서 중복 레코드를 찾을 수 있습니다. 개념을 이해하기 위해 문서로 컬렉션을 만들어 보겠습니다. 문서로 컬렉션을 생성하는 쿼리는 다음과 같습니다 -
> db.findDuplicateRecordsDemo.insertOne({"StudentFirstName":"John"});{ "승인됨":true, "insertedId":ObjectId("5c8a330293b406bd3df60e01")}> db. :"John"});{ "승인됨" :true, "insertedId" :ObjectId("5c8a330493b406bd3df60e02")}> db.findDuplicateRecordsDemo.insertOne({"StudentFirstName":"Carol"});{ ",acknowled "insertedId":ObjectId("5c8a330c93b406bd3df60e03")}> db.findDuplicateRecordsDemo.insertOne({"StudentFirstName":"Sam"});{ "확인됨":true, "insertedId"5:ObjectIad3 findDuplicateRecordsDemo.insertOne({"StudentFirstName":"Carol"});{ "확인된" :true, "insertedId" :ObjectId("5c8a331593b406bd3df60e05")}> db.findDuplicateRecordsFirstName":insertOne;{ "승인됨" :true, "insertedId" :ObjectId("5c8a331e93b406bd3df60e06")}
find() 메서드를 사용하여 컬렉션의 모든 문서를 표시합니다. 쿼리는 다음과 같습니다 -
> db.findDuplicateRecordsDemo.find();
다음은 출력입니다 -
다음은 MongoDB에서 중복 레코드를 찾는 쿼리입니다 -
> db.findDuplicateRecordsDemo.aggregate( ... {"$group" :{ "_id":"$StudentFirstName", "count":{ "$sum":1 } } }, ... {"$ match":{"_id" :{ "$ne" :null } , "count" :{"$gt":1} } }, ... {"$project":{"StudentFirstName" :"$_id" , "_id" :0} }... );
다음은 중복 레코드만 표시하는 출력입니다. -
{ "StudentFirstName" :"캐롤" }{ "StudentFirstName" :"John" }