distinct() মেথড ব্যবহার
একাধিক ডকুমেন্টের অ্যারে ফিল্ড থেকে সব অনন্য (unique) মান পাওয়ার জন্য distinct() মেথড ব্যবহার করা হয়। ইনডেক্স থাকলে কুয়েরি দ্রুত হয়।
উদাহরণ: ডকুমেন্ট তৈরি
> db.distinctAggregation.insertOne({"UserName":"Larry","UserPost":["Hi","Hello"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c98aefb330fd0aa0d2fe4c6") }
> db.distinctAggregation.insertOne({"UserName":"Chris","UserPost":["Hi","Good Morning"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c98af0a330fd0aa0d2fe4c7") }
> db.distinctAggregation.insertOne({"UserName":"Robert","UserPost":["Awesome"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c98af1e330fd0aa0d2fe4c8") }
ইনডেক্স তৈরি (অপশনাল, পারফরম্যান্সের জন্য)
> db.distinctAggregation.ensureIndex({"UserPost": 1});
{ "createdCollectionAutomatically" : false, "numIndexesBefore" : 1, "numIndexesAfter" : 2, "ok" : 1 }
ডISTINCT মান পাওয়া
> db.distinctAggregation.distinct("UserPost");
আউটপুট:
[ "Awesome", "Good Morning", "Hello", "Hi" ]
ব্যাখ্যা: distinct("UserPost") সব ডকুমেন্টের UserPost অ্যারে থেকে ডুপ্লিকেট বাদ দিয়ে অনন্য মান গুলো রিটার্ন করে। ইনডেক্স থাকলে বড় ডেটাসেটে কুয়েরি অনেক দ্রুত হয়।