Unique()를 사용하여 고유한 선택에 해당하는 항목을 얻을 수 있습니다. 먼저 문서로 컬렉션을 생성해 보겠습니다. −
> db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"John","Age":23}); { "acknowledged" : true, "insertedId" : ObjectId("5cd12759e3526dbddbbfb60b") } > db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Larry","Age":25}); { "acknowledged" : true, "insertedId" : ObjectId("5cd12768e3526dbddbbfb60c") } > db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"David","Age":25}); { "acknowledged" : true, "insertedId" : ObjectId("5cd12773e3526dbddbbfb60d") } > db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Carol","Age":26}); { "acknowledged" : true, "insertedId" : ObjectId("5cd1277ee3526dbddbbfb60e") } > db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Sam","Age":25}); { "acknowledged" : true, "insertedId" : ObjectId("5cd12793e3526dbddbbfb60f") } > db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Larry","Age":25}); { "acknowledged" : true, "insertedId" : ObjectId("5cd127a3e3526dbddbbfb610") } > db.distinctNameAndAgeDemo.insertOne({"ClientFirstName":"Carol","Age":26}); { "acknowledged" : true, "insertedId" : ObjectId("5cd127aae3526dbddbbfb611") }
다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다. -
> db.distinctNameAndAgeDemo.find().pretty();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5cd12759e3526dbddbbfb60b"), "ClientFirstName" : "John", "Age" : 23 } { "_id" : ObjectId("5cd12768e3526dbddbbfb60c"), "ClientFirstName" : "Larry", "Age" : 25 } { "_id" : ObjectId("5cd12773e3526dbddbbfb60d"), "ClientFirstName" : "David", "Age" : 25 } { "_id" : ObjectId("5cd1277ee3526dbddbbfb60e"), "ClientFirstName" : "Carol", "Age" : 26 } { "_id" : ObjectId("5cd12793e3526dbddbbfb60f"), "ClientFirstName" : "Sam", "Age" : 25 } { "_id" : ObjectId("5cd127a3e3526dbddbbfb610"), "ClientFirstName" : "Larry", "Age" : 25 } { "_id" : ObjectId("5cd127aae3526dbddbbfb611"), "ClientFirstName" : "Carol", "Age" : 26 }
다음 쿼리는 `select distinct(name) from collectionName where age ="25" −
와 동일합니다.> db.distinctNameAndAgeDemo.distinct("ClientFirstName", {"Age": 25});
이것은 다음과 같은 출력을 생성합니다 -
[ "Larry", "David", "Sam" ]
위에서 우리는 나이가 25세인 클라이언트의 이름을 표시했습니다.