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

MongoDB-এ ক্যোয়ারিতে শুধু নির্দিষ্ট ফিল্ড প্রজেক্ট করার পদ্ধতি

MongoDB-এ find() মেথডের দ্বিতীয় প্যারামিটারে প্রজেকশন অবজেক্ট দিয়ে শুধু নির্দিষ্ট ফিল্ড বের করা যায়। 1 বা true মানে ইনক্লুড, 0 বা false মানে এক্সক্লুড।

উদাহরণ

কয়েকটি ডকুমেন্ট তৈরি করুন:

> db.querySelectDemo.insertOne({ UserId: 100, UserName: "Chris", UserAge: 25 });
{ "acknowledged" : true, "insertedId" : ObjectId("5ce90eb478f00858fb12e90e") }

> db.querySelectDemo.insertOne({ UserId: 101, UserName: "Robert", UserAge: 26 });
{ "acknowledged" : true, "insertedId" : ObjectId("5ce90ec578f00858fb12e90f") }

> db.querySelectDemo.insertOne({ UserId: 103, UserName: "David", UserAge: 27 });
{ "acknowledged" : true, "insertedId" : ObjectId("5ce90ed478f00858fb12e910") }

সকল ডকুমেন্ট দেখুন:

> db.querySelectDemo.find().pretty();

আউটপুট:

{ "_id" : ObjectId("5ce90eb478f00858fb12e90e"), "UserId" : 100, "UserName" : "Chris", "UserAge" : 25 }
{ "_id" : ObjectId("5ce90ec578f00858fb12e90f"), "UserId" : 101, "UserName" : "Robert", "UserAge" : 26 }
{ "_id" : ObjectId("5ce90ed478f00858fb12e910"), "UserId" : 103, "UserName" : "David", "UserAge" : 27 }

শুধু UserName ফিল্ড বের করা (_id বাদ)

> db.querySelectDemo.find({}, { _id: 0, UserName: true });

আউটপুট:

{ "UserName" : "Chris" }
{ "UserName" : "Robert" }
{ "UserName" : "David" }

ব্যাখ্যা:

  • {} — ফিল্টার (সব ডকুমেন্ট)।
  • { _id: 0, UserName: true } — _id বাদ (0), UserName ইনক্লুড (true/1)।
  • _id ডিফল্টভাবে ইনক্লুড থাকে, বাদ দিতে স্পষ্ট 0 দিতে হয়।

নियम: একই ক্যোয়ারিতে 1 এবং 0 মিক্স করা যায় না ( _id বাদে)। অর্থাৎ হয় সব ইনক্লুড করবেন বা সব এক্সক্লুড করবেন।

এগ্রিগেশন বিকল্প: { $project: { _id: 0, UserName: 1 } } — আরও শক্তিশালী, এক্সপ্রেশন ব্যবহার করা যায়।

  1. MongoDB-তে জাভাস্ক্রিপ্ট দিয়ে অ্যারে অবজেক্টকে কী-ভ্যালু অবজেক্টে রূপান্তর করা

  2. MongoDB-এ নতুন ফিল্ড যোগ করে প্রাইস বিভাজন এবং কনক্যাটেনেশন

  3. MongoDB-এ শুধু ইউনিক রেকর্ড দেখানো (ডুপ্লিকেট বাদ দিয়ে)

  4. MongoDB-এ নেস্টেড ডকুমেন্ট থেকে শুধু কী (keys) বের করা