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

MongoDB-এ অ্যারে ফিল্ড থেকে নির্দিষ্ট ফিল্ড প্রজেক্ট করা (প্রজেকশন)

MongoDB-এ find()-এর দ্বিতীয় আর্গুমেন্ট (প্রজেকশন) দিয়ে অ্যারে অবজেক্টের নির্দিষ্ট ফিল্ডগুলো মাত্র রিটার্ন করা যায়।

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

> db.projectionAnElementDemo.insertOne({
  "CustomerId": 100,
  "CustomerDetails": [
    {"CustomerName": "Chris", "CustomerCountryName": "US"},
    {"CustomerName": "Robert", "CustomerCountryName": "UK"}
  ]
});
{ "acknowledged": true, "insertedId": ObjectId("5cd31c56b64f4b851c3a13ea") }

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

> db.projectionAnElementDemo.find().pretty();
আউটপুট:
{
  "_id": ObjectId("5cd31c56b64f4b851c3a13ea"),
  "CustomerId": 100,
  "CustomerDetails": [
    {"CustomerName": "Chris", "CustomerCountryName": "US"},
    {"CustomerName": "Robert", "CustomerCountryName": "UK"}
  ]
}

প্রজেকশন: শুধু CustomerId এবং CustomerDetails.CustomerName দেখানো

> db.projectionAnElementDemo.find({}, {CustomerId: 1, "CustomerDetails.CustomerName": 1}).pretty();
আউটপুট (CountryName বাদ পড়েছে):
{
  "_id": ObjectId("5cd31c56b64f4b851c3a13ea"),
  "CustomerId": 100,
  "CustomerDetails": [
    {"CustomerName": "Chris"},
    {"CustomerName": "Robert"}
  ]
}

ব্যাখ্যা: প্রজেকশনে 1 মানে ইনক্লুড, 0 মানে এক্সক্লুড। _id ডিফল্টলায় আসে, বাদ দিতে _id: 0 দিন। অ্যারে অবজেক্টের ফিল্ড প্রজেক্ট করতে ডট নোটেশন ব্যবহার করুন।

  1. MongoDB-এ খালি ফিল্ড চেক করার পদ্ধতি

  2. MongoDB কালেকশনে অবজেক্টের অ্যারে খোঁজা

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

  4. MongoDB ডকুমেন্টের নির্দিষ্ট ফিল্ড থেকে অ্যারে এলিমেন্ট কাউন্ট করা