কম্পিউটার টিউটোরিয়াল

MongoDB-তে ডিস্টিংক্ট ভ্যালু সোর্টেড আকারে কীভাবে পাবেন?

distinct() + sort() চেইনিং

MongoDB-তে distinct() মেথড একটি অ্যারে রিটার্ন করে, যেটার ওপর sort() কল করে সর্ট করা যায়।

সিনট্যাক্স

db.yourCollectionName.distinct("yourFieldName").sort();

উদাহরণ: ডকুমেন্ট তৈরি (ডুপ্লিকেট আছে)

> db.getDistinctWithSortedDataDemo.insertOne({"StudentId":10,"StudentName":"John","StudentAge":23});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b1e3315e86fd1496b38c3") }
> db.getDistinctWithSortedDataDemo.insertOne({"StudentId":20,"StudentName":"Carol","StudentAge":21});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b1e3e15e86fd1496b38c4") }
> db.getDistinctWithSortedDataDemo.insertOne({"StudentId":10,"StudentName":"John","StudentAge":23});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b1e4415e86fd1496b38c5") }
> db.getDistinctWithSortedDataDemo.insertOne({"StudentId":30,"StudentName":"Chris","StudentAge":22});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b1e5115e86fd1496b38c6") }
> db.getDistinctWithSortedDataDemo.insertOne({"StudentId":20,"StudentName":"Carol","StudentAge":21});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b1e5715e86fd1496b38c7") }
> db.getDistinctWithSortedDataDemo.insertOne({"StudentId":40,"StudentName":"Bob","StudentAge":20});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b1e6515e86fd1496b38c8") }
> db.getDistinctWithSortedDataDemo.insertOne({"StudentId":40,"StudentName":"Bob","StudentAge":20});
{ "acknowledged" : true, "insertedId" : ObjectId("5c9b1e6d15e86fd1496b38c9") }

StudentName দিয়ে ডিস্টিংক্ট + সোর্ট

> db.getDistinctWithSortedDataDemo.distinct("StudentName").sort();

আউটপুট: [ "Bob", "Carol", "Chris", "John" ] (অ্যালফাবেটিক্যালি)۔

StudentAge দিয়ে ডিস্টিংক্ট + সোর্ট

> db.getDistinctWithSortedDataDemo.distinct("StudentAge").sort();

আউটপুট: [ 20, 21, 22, 23 ] (নামারিক্যালি)۔

নোট: distinct() শেল মেথড (ড্রাইভার মেথড নয়)। বড় ডেটাসেটে ইনডেক্স ব্যবহার করুন। ডিসেন্ডিং সোর্টের জন্য .sort((a,b) => b - a) (JS) বা অগ리게েশন { $sort: { _id: -1 } } ব্যবহার করুন।

  1. MongoDB এগরিগেশনে অ্যারে থেকে শুধু ভ্যালু বের করা

  2. MongoDB-তে অ্যারে ইন্টারসেকশনের ডেটা পাওয়া

  3. MongoDB-এ ডুপ্লিকেট নামের স্কোর যোগ করে ডিস্টিংক্ট জোড়া বের করা

  4. MongoDB-এ ডISTINCT এলিমেন্টের জন্য MAX ভ্যালু বের করা