MongoDB-এ distinct() মেথড ব্যবহার করে ডুপ্লিকেট বাদ দিয়ে মান বের করা
distinct() মেথড একটি ফিল্ডের সব অনন্য (unique) মান একটি অ্যারে হিসেবে রিটার্ন করে। এটি রিপোর্টিং, ড্রপডাউন পপুলেট বা ডেটা অ্যানালিসিসের জন্য খুব কার্যকর।
উদাহরণ: ডেটা ইনসার্ট
> db.demo303.insertOne({FirstName:"Chris",LastName:"Brown"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea0f6f8647eb59e56202f") }
> db.demo303.insertOne({FirstName:"John",LastName:"Doe"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea104f8647eb59e562030") }
> db.demo303.insertOne({FirstName:"Chris",LastName:"Smith"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea10df8647eb59e562031") }
> db.demo303.insertOne({FirstName:"John",LastName:"Smith"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea121f8647eb59e562032") }
> db.demo303.insertOne({FirstName:"David",LastName:"Miller"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4ea136f8647eb59e562033") }
সব ডকুমেন্ট দেখানো
> db.demo303.find().pretty();
আউটপুট:
{ "_id" : ObjectId("5e4ea0f6f8647eb59e56202f"), "FirstName" : "Chris", "LastName" : "Brown" }
{ "_id" : ObjectId("5e4ea104f8647eb59e562030"), "FirstName" : "John", "LastName" : "Doe" }
{ "_id" : ObjectId("5e4ea10df8647eb59e562031"), "FirstName" : "Chris", "LastName" : "Smith" }
{ "_id" : ObjectId("5e4ea121f8647eb59e562032"), "FirstName" : "John", "LastName" : "Smith" }
{ "_id" : ObjectId("5e4ea136f8647eb59e562033"), "FirstName" : "David", "LastName" : "Miller" }
distinct() কোয়ারি
> db.demo303.distinct("FirstName");
আউটপুট:
[ "Chris", "John", "David" ]
ব্যাখ্যা
distinct("FirstName")—FirstNameফিল্ডের সব অনন্য মান অ্যারে হিসেবে ফেরত দেয়।- Chris এবং John দুবার করে থাকা সত্ত্বেও একবারই আসেছে।
- এটি কোয়ারি ফিল্টারও নেয়:
db.demo303.distinct("FirstName", {LastName:"Smith"})— শুধু Smith এর FirstName গুলো।
পারফরম্যান্স টিপস: সংশ্লিষ্ট ফিল্ডে ইন্ডেক্স থাকলে distinct খুব দ্রুত চলে।