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

MongoDB-এ কী (key) দিয়ে নেস্টেড অবজেক্টের চাইল্ড ফিল্ড অ্যাক্সেস করা

MongoDB-এ ডট নোটেশন দিয়ে নেস্টেড অবজেক্টের নির্দিষ্ট কী অ্যাক্সেস

যখন কোনো ফিল্ডে অবজেক্ট থাকে এবং তার ভেতরের নির্দিষ্ট কী (প্রোপার্টি) শুধু আনা দরকার হয়, তখন প্রজেকশনে ডট নোটেশন ব্যবহার করা হয়।

উদাহরণ: ডেটা ইনসার্ট

> db.demo305.insertOne({ _id: 101, FirstName : 'Chris', details : { "0":"102", "1":"10001" } });
{ "acknowledged" : true, "insertedId" : 101 }
> db.demo305.insertOne({ _id: 102, FirstName : 'David', details : { "0":"103", "1":"10002" } });
{ "acknowledged" : true, "insertedId" : 102 }

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

> db.demo305.find();

আউটপুট:

{ "_id" : 101, "FirstName" : "Chris", "details" : { "0" : "102", "1" : "10001" } }
{ "_id" : 102, "FirstName" : "David", "details" : { "0" : "103", "1" : "10002" } }

নির্দিষ্ট কী (details.0) আনার কোয়ারি

> db.demo305.find({_id:102},{'details.0':1});

আউটপুট:

{ "_id" : 102, "details" : { "0" : "103" } }

ব্যাখ্যা

  • {_id:102} — ফিল্টার: শুধু _id 102 वाला ডকুমেন্ট।
  • {'details.0':1} — প্রজেকশন: details অবজেক্টের ভেতরের "0" কীটি শুধু আনা (1 = ইনক্লুড)।
  • _id ডিফল্টভাবে আসে, বাদ দিতে _id:0 দিতে হবে।

ব্যবহার ক্ষেত্র: বড় নেস্টেড অবজেক্ট থেকে শুধু প্রয়োজনীয় কীগুলো আনা নেটওয়ার্ক ও মেমরি বাঁচায়।

  1. MongoDB-তে দুটি অ্যারের ইন্টারসেকশন বের করা

  2. MongoDB-এ কালেকশন থেকে সর্বোচ্চ মান বের করা

  3. MongoDB-তে distinct() ব্যবহার করে ইউনিক ভ্যালু বের করা

  4. C#-এ StringDictionary-এ কিগুলোর কালেকশন পাওয়া (Keys প্রপার্টি)