কম্পিউটার

MongoDB এর সাথে সাব ডকুমেন্টে কিভাবে অ্যারে ফিল্টার করবেন?


আপনি সমষ্টি ব্যবহার করতে পারেন এবং ম্যাচ প্রয়োগ করার আগে অ্যারে তালিকাটি খুলে ফেলতে পারেন। উপরের ধারণাটি বোঝার জন্য, আসুন আমরা নথি সহ একটি সংগ্রহ তৈরি করি। নথির সাথে একটি সংগ্রহ তৈরি করার প্রশ্নটি নিম্নরূপ:

> db.filterArray.insertOne( { "L": [{ "N":1 }, { "N":2 } , { "N":3 }, { "N":4 }, { "N":5 } ]});

উপরের প্রশ্নটি চালানোর পরে নিম্নলিখিতটি দৃশ্যমান:

{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c6d63f2734e98fc0a434aeb")
}

Find() পদ্ধতির সাহায্যে একটি সংগ্রহ থেকে নথি প্রদর্শন করুন। প্রশ্নটি নিম্নরূপ:

> db.filterArray.find().pretty();

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

{
   "_id" : ObjectId("5c6d63f2734e98fc0a434aeb"),
   "L" : [
      {
         "N" : 1
      },
      {
         "N" : 2
      },
      {
         "N" : 3
      },
      {
         "N" : 4
      },
      {
         "N" : 5
      }
   ]
}

MongoDB-এর সাথে সাব ডকুমেন্টে অ্যারে ফিল্টার করার জন্য এখানে ক্যোয়ারী রয়েছে। আমরা $gt ব্যবহার করেছি 3 থেকে বড় ক্ষেত্র পেতে:

> db.filterArray.aggregate({ $match:{_id:ObjectId("5c6d63f2734e98fc0a434aeb")}}, {
$unwind:'$L'}, {$match:{'L.N':{$gt:3}}},
{$group:{_id:'$_id',subDocument:{$push:'$L.N'}}}).pretty();

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

{
   "_id" : ObjectId("5c6d63f2734e98fc0a434aeb"),
   "subDocument" : [
      4,
      5
   ]
}

  1. অ্যারেতে মাল্টিকি সূচক সহ মঙ্গোডিবি প্রশ্নগুলি কীভাবে উন্নত করবেন?

  2. MongoDB এর সাথে অ্যারেতে আইটেমগুলি কীভাবে গণনা করবেন?

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

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