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

MongoDB-তে $or অপারেটর ব্যবহার করে একাধিক শর্তে ডকুমেন্ট বের করা

MongoDB-তে একাধিক শর্তের যেকোনো একটি পূরণ করলে ডকুমেন্ট বের করতে $or অপারেটর ব্যবহার করা হয়। এটি লজিক্যাল OR অপারেশন সম্পাদন করে।

উদাহরণ: শিক্ষার্থী ডেটা (নাম, মার্কস, বয়স, স্ট্যাটাস)

> db.demo711.insertOne({Name: "John", "Marks": 75, Age: 21, status: "Active"});
> db.demo711.insertOne({Name: "Chris", "Marks": 55, Age: 22, status: "Active"});
> db.demo711.insertOne({Name: "Bob", "Marks": 45, Age: 20, status: "Inactive"});
> db.demo711.insertOne({Name: "David", "Marks": 85, Age: 23, status: "Active"});

সব ডকুমেন্ট দেখা

> db.demo711.find();

$or দিয়ে কোয়েরি: বয়স ২৩+ OR মার্কস ৮০+ OR স্ট্যাটাস Inactive

> db.demo711.find({
    $or: [
        { Age: { $gte: 23 } },
        { Marks: { $gt: 80 } },
        { status: 'Inactive' }
    ]
});

আউটপুট:

{ "_id" : ..., "Name" : "Bob", "Marks" : 45, "Age" : 20, "status" : "Inactive" }
{ "_id" : ..., "Name" : "David", "Marks" : 85, "Age" : 23, "status" : "Active" }

ব্যাখ্যা:

  • Bob - status: "Inactive" মিলে (অন্যান্য দুটি শর্ত মেলেনি)
  • David - Age: 23 (>=23) এবং Marks: 85 (>80) দুটোই মিলে
  • John, Chris - কোনো শর্ত মেলেনি

টিপ: $or-এর প্রতিটি কন্ডিশন আলাদা আলাদা ইন্ডেক্স ব্যবহার করতে পারে, তাই পারফরম্যান্সের জন্য সावধানে ব্যবহার করুন।

  1. MongoDB-তে অ্যারেকে n অ্যাট্রিবিউটসহ ডকুমেন্টের ম্যাপে রূপান্তর করা

  2. MongoDB-এ $or অপারেটর ব্যবহার করে ডকুমেন্ট ফেচ করা

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

  4. MongoDB-এ bulkWrite() দিয়ে এক কোয়েরিতে একাধিক ডকুমেন্ট আপডেট করা