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

MongoDB-এ নির্দিষ্ট ফিল্ড দিয়ে সার্চ করা

MongoDB-এ $or অপারেটর ব্যবহার করে একাধিক ফিল্ডে সার্চ

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

উদাহরণ: নাম এবং দেশ সহ ডকুমেন্ট তৈরি

> db.demo371.insertOne({"Name":"David","CountryName":"US"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e57f6982ae06a1609a00af2") }
> db.demo371.insertOne({"Name":"John","CountryName":"UK"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e57f69e2ae06a1609a00af3") }
> db.demo371.insertOne({"Name":"Bob","CountryName":"AUS"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e57f6a42ae06a1609a00af4") }
> db.demo371.insertOne({"Name":"Mike","CountryName":"US"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e57f6ba2ae06a1609a00af5") }

সমস্ত ডকুমেন্ট

> db.demo371.find();
{ "_id" : ObjectId("5e57f6982ae06a1609a00af2"), "Name" : "David", "CountryName" : "US" }
{ "_id" : ObjectId("5e57f69e2ae06a1609a00af3"), "Name" : "John", "CountryName" : "UK" }
{ "_id" : ObjectId("5e57f6a42ae06a1609a00af4"), "Name" : "Bob", "CountryName" : "AUS" }
{ "_id" : ObjectId("5e57f6ba2ae06a1609a00af5"), "Name" : "Mike", "CountryName" : "US" }

$or ব্যবহার করে সার্চ: Name="David" OR CountryName="UK"

> db.demo371.find({ $or: [ { Name: "David" }, { CountryName: "UK" } ] })

ফলাফল

{ "_id" : ObjectId("5e57f6982ae06a1609a00af2"), "Name" : "David", "CountryName" : "US" }
{ "_id" : ObjectId("5e57f69e2ae06a1609a00af3"), "Name" : "John", "CountryName" : "UK" }

অন্যান্য লজিক্যাল অপারেটর

  • $and: সব শর্ত পূরণ করতে হবে (ডিফল্ট আচরণ)।
  • $nor: কোনো শর্ত পূরণ না করা।
  • $not: একক শর্তের বিপরীত।

পারফরম্যান্স টিপ: $or কুয়েরিতে প্রতিটি ক্লজের জন্য আলাদা ইনডেক্স থাকা উচিত। কম্পাউন্ড ইনডেক্স $or-এ কাজ করে না।

  1. MongoDB-এ অ্যারে ফিল্ডের নির্দিষ্ট এলিমেন্ট প্রজেক্ট করা ($filter, $project)

  2. MongoDB-তে প্রজেক্ট ফিল্ড ব্যবহার করা

  3. MongoDB-এ নির্দিষ্ট ফিল্ডের সব ডকুমেন্টের মান যোগ করা (aggregate $sum)

  4. MongoDB-তে find()-এ প্রজেকশন দিয়ে _id ফিল্ড হাইড করা