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

MongoDB কোয়েরি ব্যবহার করে অ্যারে তৈরি করার পদ্ধতি


MongoDB-তে toArray() মেথড ব্যবহার করে কোয়েরি রেজাল্ট থেকে অ্যারে তৈরি করা

MongoDB-তে ফাইন্ড কোয়েরির রেজাল্ট (কার্সর) কে জাভাস্ক্রিপ্ট অ্যারেতে রূপান্তর করতে toArray() মেথড ব্যবহার করা হয়।

সিন্ট্যাক্স:

db.yourCollectionName.find({}, {yourFieldName: 1}).toArray();

ধাপ ১: ডকুমেন্টসহ কালেকশন তৈরি করুন

> db.createArrayDemo.insertOne({"UserName":"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd6461de8cc557214c0e00") }
> db.createArrayDemo.insertOne({"UserName":"David"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd6467de8cc557214c0e01") }
> db.createArrayDemo.insertOne({"UserName":"Robert"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd646cde8cc557214c0e02") }
> db.createArrayDemo.insertOne({"UserName":"Sam"});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd6470de8cc557214c0e03") }

ধাপ ২: সব ডকুমেন্ট প্রদর্শন করুন

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

আউটপুট:

{
  "_id" : ObjectId("5cbd6461de8cc557214c0e00"),
  "UserName" : "Chris"
}
{
  "_id" : ObjectId("5cbd6467de8cc557214c0e01"),
  "UserName" : "David"
}
{
  "_id" : ObjectId("5cbd646cde8cc557214c0e02"),
  "UserName" : "Robert"
}
{
  "_id" : ObjectId("5cbd6470de8cc557214c0e03"),
  "UserName" : "Sam"
}

কেস ১: UserName ফিল্ডের অ্যারে তৈরি করুন (_id বাদ দিয়ে)

> db.createArrayDemo.find({}, {_id: 0, UserName: 1}).toArray();

ফলাফল:

[
  { "UserName" : "Chris" },
  { "UserName" : "David" },
  { "UserName" : "Robert" },
  { "UserName" : "Sam" }
]

কেস ২: শুধু _id ফিল্ডের অ্যারে তৈরি করুন

> db.createArrayDemo.find({}, {_id: 1}).toArray();

ফলাফল:

[
  { "_id" : ObjectId("5cbd6461de8cc557214c0e00") },
  { "_id" : ObjectId("5cbd6467de8cc557214c0e01") },
  { "_id" : ObjectId("5cbd646cde8cc557214c0e02") },
  { "_id" : ObjectId("5cbd6470de8cc557214c0e03") }
]

ব্যাখ্যা:

  • find({}, {projection}) - প্রথম আর্গুমেন্ট কোয়েরি (খালি = সব), দ্বিতীয় আর্গুমেন্ট প্রজেকশন
  • toArray() - কার্সরকে জাভাস্ক্রিপ্ট অ্যারেতে রূপান্তর করে
  • ফলাফলটি MongoDB শেলে সরাসরি প্রিন্ট হয়, প্রোগ্রামিং ল্যাঙ্গুয়েজে (Node.js, Python ইত্যাদি) এটি অ্যারে অবজেক্ট হিসেবে রিটার্ন হয়

দ্রষ্টব্য: বড় ডেটাসেটের জন্য toArray() মেমরি সমস্যা তৈরি করতে পারে। সেক্ষেত্রে কার্সর ইটারেট করে প্রসেস করা ভালো।

  1. MongoDB-তে সাবডকুমেন্টের অ্যারে কুয়েরি

  2. MongoDB-এ নেস্টেড অ্যারে সর্ট করা

  3. MongoDB-এ updateOne এবং $push ব্যবহার করে নেস্টেড অ্যারে আপডেট করা

  4. MongoDB-এ এমবেডেড ডকুমেন্টের অ্যারে ফিল্টার করা (৩ লেভেল)