কম্পিউটার

MongoDB-তে সাব ডকুমেন্ট দ্বারা সাব ডকুমেন্ট ফিল্টার করবেন?


এর জন্য $unwind এর সাথে aggregate() ব্যবহার করুন। আসুন আমরা নথি-

সহ একটি সংগ্রহ তৈরি করি
> db.demo583.insert([
...    {
...       "details1" : [
...          {
...             "details2" : [
...                {
...                   "isMarried" : true,
...                   "Name" : "Chris"
...                },
...                {
...                   "isMarried" : true,
...                   "Name" : "Bob"
...                }
...             ]
...          },
...          {
...             "details2" : [
...                {
...                   "isMarried" : false,
...                   "Name" : "Chris"
...                },
...                {
...                   "isMarried" : true,
...                   "Name" : "Mike"
...                }
...             ]
...          }
...       ]
...    }
... ]);
BulkWriteResult({
   "writeErrors" : [ ],
   "writeConcernErrors" : [ ],
   "nInserted" : 1,
   "nUpserted" : 0,
   "nMatched" : 0,
   "nModified" : 0,
   "nRemoved" : 0,
   "upserted" : [ ]
})

Find() পদ্ধতি -

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

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

তৈরি করবে
{ "_id" : ObjectId("5e91d3c4fd2d90c177b5bcc1"), "details1" : [
   { "details2" : [
      { "isMarried" : true, "Name" : "Chris" },
      { "isMarried" : true, "Name" : "Bob" }
   ] },
   { "details2" : [
      { "isMarried" : false, "Name" : "Chris" },
      { "isMarried" : true, "Name" : "Mike" }
   ] }
] }

সাব-ডকুমেন্ট −

দ্বারা সাব ডকুমেন্ট ফিল্টার করার জন্য নিম্নোক্ত ক্যোয়ারী
> var q= [
...    {
...       "$match": {
...          "details1.details2.isMarried": true,
...          "details1.details2.Name": "Chris"
...       }
...    },
...    {
...       "$unwind": "$details1"
...    },
...    {
...       "$unwind": "$details1.details2"
...    },
...    {
...       "$match": {
...          "details1.details2.isMarried": true,
...          "details1.details2.Name": "Chris"
...       }
...    }
... ];
> db.demo583.aggregate(q).pretty();

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

তৈরি করবে
{
   "_id" : ObjectId("5e91d3c4fd2d90c177b5bcc1"),
   "details1" : {
      "details2" : {
         "isMarried" : true,
         "Name" : "Chris"
      }
   }
}

  1. আমি কিভাবে MongoDB-তে সাব ডকুমেন্ট ফিল্টার করব?

  2. MongoDB - এমবেডেড নথি জিজ্ঞাসা করবেন?

  3. MongoDB এর সাথে এমবেডেড নথির অ্যারেতে ফিল্টার ক্যোয়ারী?

  4. একটি MongoDB নথি থেকে নির্দিষ্ট মান ফিল্টার করুন