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

MongoDB Aggregate ব্যবহার করে শুধু টপ রেকর্ড বেছে নেওয়া (ডিসেন্ডিং)


ডিসেন্ডিং অর্ডারের জন্য -1 ব্যবহার করুন, যা sort()-এর জন্য সর্টিং অর্ডার নির্দেশ করে। ডকুমেন্টসহ একটি কলেকশন তৈরি করি:

> db.demo267.insertOne({id:100,"Name":"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4811951627c0c63e7dbaab") }
> db.demo267.insertOne({id:100,"Name":"Adam"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e48119e1627c0c63e7dbaac") }
> db.demo267.insertOne({id:100,"Name":"David"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4811a51627c0c63e7dbaad") }
> db.demo267.insertOne({id:100,"Name":"Bob"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e4811ab1627c0c63e7dbaae") }

find() মেথড দিয়ে সব ডকুমেন্ট দেখান:

> db.demo267.find().pretty();
{ "_id" : ObjectId("5e4811951627c0c63e7dbaab"), "id" : 100, "Name" : "Chris" }
{ "_id" : ObjectId("5e48119e1627c0c63e7dbaac"), "id" : 100, "Name" : "Adam" }
{ "_id" : ObjectId("5e4811a51627c0c63e7dbaad"), "id" : 100, "Name" : "David" }
{ "_id" : ObjectId("5e4811ab1627c0c63e7dbaae"), "id" : 100, "Name" : "Bob" }

শুধু টপ রেকর্ড (ডিসেন্ডিং অর্ডারে) বেছে নেওয়ার কোয়েরি:

> db.demo267.find().sort({Name:-1}).limit(1);

ফলাফল (Name ফিল্ড অনুযায়ী ডিসেন্ডিং সর্টে প্রথম রেকর্ড):

{ "_id" : ObjectId("5e4811a51627c0c63e7dbaad"), "id" : 100, "Name" : "David" }

  1. MongoDB-তে অ্যাগ্রিগেশন দিয়ে ডISTINCT সিলেক্ট এবং কাউন্ট করা

  2. MongoDB অ্যাগ্রিগেশন: নেস্টেড অ্যারে এলিমেন্টের গড় (Average) বের করা ($avg + $unwind)

  3. MongoDB-এ শুধু ইউনিক রেকর্ড দেখানো (ডুপ্লিকেট বাদ দিয়ে)

  4. MySQL-এ শেষ রেকর্ড সিলেক্ট করুন এবং আপডেট করুন