কম্পিউটার

সমস্ত MongoDB নথিতে অ্যারের সর্বশেষ এন্ট্রিগুলি কীভাবে খুঁজে পাবেন?


সমস্ত নথিতে অ্যারেতে সর্বশেষ এন্ট্রি খুঁজতে, aggregate() ব্যবহার করুন। আসুন নথি-

সহ একটি সংগ্রহ তৈরি করি
> db.demo179.insertOne(
...{
...   "Name":"Chris",
...   "Details": [
...   {
...      "Id":101,
...      "Subject":"MongoDB"
...   },
...   {
...      "Id":102,
...      "Subject":"MySQL"
...   }
...   ]
...}
...);
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e3980299e4f06af551997f9")
}
> db.demo179.insertOne(
...{
...   "Name":"David",
...   "Details": [
...   {
...      "Id":103,
...      "Subject":"Java"
...   },
...   {
...      "Id":104,
...      "Subject":"C"
...   }
...   ]
...}
...);
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e39802a9e4f06af551997fa")
}

Find() পদ্ধতি -

এর সাহায্যে একটি সংগ্রহ থেকে সমস্ত নথি প্রদর্শন করুন
> db.demo179.find().pretty();

এটি নিম্নলিখিত আউটপুট −

তৈরি করবে
{
   "_id" : ObjectId("5e3980299e4f06af551997f9"),
   "Name" : "Chris",
   "Details" : [
      {
         "Id" : 101,
         "Subject" : "MongoDB"
      },
      {
         "Id" : 102,
         "Subject" : "MySQL"
      }
   ]
}
{
   "_id" : ObjectId("5e39802a9e4f06af551997fa"),
   "Name" : "David",
   "Details" : [
      {
         "Id" : 103,
         "Subject" : "Java"
      },
      {
         "Id" : 104,
         "Subject" : "C"
      }
   ]
}

সমস্ত নথিতে অ্যারেতে সর্বশেষ এন্ট্রিগুলি সন্ধান করার জন্য নিম্নলিখিত ক্যোয়ারী রয়েছে −

> db.demo179.aggregate([
...   { "$unwind": "$Details" },
...   { "$sort": { "Details.Id": -1 }  },
...   { "$limit": 2 },
...   {
...      "$group": {
...         "_id": "$Details.Id",
...         "Name" : { "$first": "$Name" },
...         "Details": { "$push": "$Details" }
...      }
...   },
...   {
...      "$project": {
...         "_id": 0, "Name": 1, "Details": 1
...      }
...   }
...])

এটি নিম্নলিখিত আউটপুট −

তৈরি করবে
{ "Name" : "David", "Details" : [ { "Id" : 103, "Subject" : "Java" } ] }
{ "Name" : "David", "Details" : [ { "Id" : 104, "Subject" : "C" } ] }

  1. কিভাবে একটি নির্দিষ্ট স্ট্রিং সঙ্গে MongoDB নথি খুঁজে পেতে?

  2. MongoDB-তে অ্যারেতে কীভাবে যুক্ত করবেন?

  3. MongoDB-তে একটি অ্যারের উপর ভিত্তি করে নথিগুলি কীভাবে ফিল্টার করবেন?

  4. কিভাবে আমি একটি অ্যারের মধ্যে মিলিত বস্তুর সংখ্যার উপর ভিত্তি করে MongoDB তে নথি খুঁজে পেতে পারি?