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

MongoDB-এ ইন্টিজার ভ্যালু দিয়ে ডকুমেন্ট খুঁজে বের করা


ইন্টিজার ফিল্ডে সঠিক মিল: find()

MongoDB-এ একটি чисলাত্মক ফিল্ডে নির্দিষ্ট ইন্টিজার মান খুঁজে বের করতে সরাসরি find() এ মানটি দেওয়া হয়। MongoDB টাইপ-সেনসিটিভ, তাই 101 এবং "101" আলাদা।

নমুনা ডেটা তৈরি

> db.demo472.insertOne({ "Project_Id": -101, "ProjectName": "Online Customer Tracking" })
> db.demo472.insertOne({ "Project_Id": 101, "ProjectName": "Online Banking System" })
> db.demo472.insertOne({ "Project_Id": 102, "ProjectName": "Online Library System" })

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

> db.demo472.find()

আউটপুট:

{ "_id": ObjectId("..."), "Project_Id": -101, "ProjectName": "Online Customer Tracking" }
{ "_id": ObjectId("..."), "Project_Id": 101, "ProjectName": "Online Banking System" }
{ "_id": ObjectId("..."), "Project_Id": 102, "ProjectName": "Online Library System" }

নেগেটিভ ইন্টিজার দিয়ে খোঁজা

> db.getCollection('demo472').find({ "Project_Id": -101 })

ফলাফল:

{ "_id": ObjectId("..."), "Project_Id": -101, "ProjectName": "Online Customer Tracking" }

ব্যাখ্যা

  • MongoDB BSON টাইপ সিস্টেম ব্যবহার করে: int32, int64, double
  • Project_Id: -101 ইন্টিজার হিসেবে স্টোর হয়েছে, তাই কোয়েরিতে -101 (নাম্বার) দিয়ে মেলেছে
  • যদি স্ট্রিং হিসেবে "-101" স্টোর হতো, তবে কোয়েরিতে "-101" (স্ট্রিং) দিতে হতো
  • db.getCollection('name'): স্পেশাল ক্যারেক্টার থাকা কলেকশন নামের জন্য বা এক্সপ্লিসিট 액্সেস
  • রেঞ্জ কোয়েরি: { Project_Id: { $gte: 100, $lte: 200 } }

টাইপ সঠিক রাখা কোয়েরি সঠিকতা এবং ইনডেক্স ব্যবহার নিশ্চিত করতে খুব গুরুত্বপূর্ণ।

  1. MongoDB কোয়ারী: আইডি যদি ডকুমেন্ট ফিল্ড অ্যারে মানের সমান হয় তবে বাদ দেওয়া

  2. MongoDB-তে অ্যারের ভ্যালু অনুযায়ী কালেকশন সর্ট করা (aggregate + $unwind + $sort)

  3. MongoDB-তে $where ব্যবহার করে বিলিং এবং ডেলিভারি ঠিকানা সমান হলে ডকুমেন্ট বের করা

  4. MongoDB-এ ফর্মুলা দিয়ে কালেকশনের সব ডকুমেন্টের ফিল্ড আপডেট করা