MongoDB에서 고유한() 메소드를 사용하여 고유한 레코드 값을 얻을 수 있습니다. 구문은 다음과 같습니다 -
db.yourCollectionName.distinct(“yourFieldName”);
위의 구문을 이해하기 위해 document를 사용하여 컬렉션을 생성해 보겠습니다. 문서로 컬렉션을 생성하는 쿼리는 다음과 같습니다 -
> db.distinctRecordDemo.insertOne({"StudentId":1,"StudentName":"John","StudentAge":21}); { "acknowledged" : true, "insertedId" : ObjectId("5c77a78299b97a65744c1b50") } > db.distinctRecordDemo.insertOne({"StudentId":2,"StudentName":"John","StudentAge":22}); { "acknowledged" : true, "insertedId" : ObjectId("5c77a78b99b97a65744c1b51") } > db.distinctRecordDemo.insertOne({"StudentId":3,"StudentName":"Carol","StudentAge":21}); { "acknowledged" : true, "insertedId" : ObjectId("5c77a79a99b97a65744c1b52") } > db.distinctRecordDemo.insertOne({"StudentId":4,"StudentName":"Carol","StudentAge":26}); { "acknowledged" : true, "insertedId" : ObjectId("5c77a7a499b97a65744c1b53") } > db.distinctRecordDemo.insertOne({"StudentId":5,"StudentName":"Sam","StudentAge":24}); { "acknowledged" : true, "insertedId" : ObjectId("5c77a7b499b97a65744c1b54") } > db.distinctRecordDemo.insertOne({"StudentId":6,"StudentName":"Mike","StudentAge":27}); { "acknowledged" : true, "insertedId" : ObjectId("5c77a7c799b97a65744c1b55") } > db.distinctRecordDemo.insertOne({"StudentId":7,"StudentName":"Sam","StudentAge":28}); { "acknowledged" : true, "insertedId" : ObjectId("5c77a7d399b97a65744c1b56") }
find() 메서드를 사용하여 컬렉션의 모든 문서를 표시합니다. 쿼리는 다음과 같습니다 -
> db.distinctRecordDemo.find().pretty();
다음은 출력입니다.
{ "_id" : ObjectId("5c77a78299b97a65744c1b50"), "StudentId" : 1, "StudentName" : "John", "StudentAge" : 21 } { "_id" : ObjectId("5c77a78b99b97a65744c1b51"), "StudentId" : 2, "StudentName" : "John", "StudentAge" : 22 } { "_id" : ObjectId("5c77a79a99b97a65744c1b52"), "StudentId" : 3, "StudentName" : "Carol", "StudentAge" : 21 } { "_id" : ObjectId("5c77a7a499b97a65744c1b53"), "StudentId" : 4, "StudentName" : "Carol", "StudentAge" : 26 } { "_id" : ObjectId("5c77a7b499b97a65744c1b54"), "StudentId" : 5, "StudentName" : "Sam", "StudentAge" : 24 } { "_id" : ObjectId("5c77a7c799b97a65744c1b55"), "StudentId" : 6, "StudentName" : "Mike", "StudentAge" : 27 } { "_id" : ObjectId("5c77a7d399b97a65744c1b56"), "StudentId" : 7, "StudentName" : "Sam", "StudentAge" : 28 }
다음은 MongoDB에서 고유한 레코드 값을 가져오는 쿼리입니다.
사례 1 − 여기 필드는 "StudentName"입니다.
쿼리는 다음과 같습니다 -
> db.distinctRecordDemo.distinct("StudentName");
다음은 StudentName −
에 대한 고유 레코드를 표시하는 출력입니다.[ "John", "Carol", "Sam", "Mike" ]
사례 2 − 여기에서 필드는 "StudentAge"입니다.
쿼리는 다음과 같습니다 -
> db.distinctRecordDemo.distinct("StudentAge");
다음은 StudentAge −
에 대한 고유 레코드를 표시하는 출력입니다.[ 21, 22, 26, 24, 27, 28 ]