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

MongoDB-এ ডকুমেন্ট থেকে নির্দিষ্ট ভ্যালু ফিল্টার করা ($filter)

$filter এবং $let/$slice ব্যবহার করে অ্যারে থেকে শর্ত অনুযায়ী এলিমেন্ট বের করুন।

> db.demo751.insertOne({ _id: 101, details: [ { Name: "Robert", id:110,Age:21}, { Name: "Rae", id:110,Age:22}, {Name: "Ralph", id:116,Age:23} ] });

এগ্রিগেশন কোয়েরি (id=110 এবং শেষ এলিমেন্ট):

> db.demo751.aggregate([
  { $addFields: {
      details: {
        $let: {
          vars: { filtered: { $filter: { input: "$details", as: "out", cond: { $eq: [ "$$out.id", 110 ] } } } },
          in: { $slice: [ "$$filtered", -1 ] }
        }
      }
  }}
])

ফলাফল: শুধু { "Name" : "Rae", "id" : 110, "Age" : 22 } রিটার্ন হয়েছে।

  1. MongoDB-তে নির্দিষ্ট এম্বেডেড ডকুমেন্ট রিটার্ন করা

  2. MongoDB-এ সাব-ডকুমেন্ট রিমুভ করা

  3. MongoDB-তে সাব-ডকুমেন্ট দিয়ে সাব-ডকুমেন্ট ফিল্টার করা (aggregate + $unwind)

  4. MongoDB-তে অ্যাগ্রিগেশন দিয়ে ডকুমেন্ট ফিল্ড থেকে বিয়োগ করা ($subtract)