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

MongoDB-এ কোয়েরি আউটপুট অস্থায়ী (temp) ডাটাবেসে স্টোর করা

forEach() ব্যবহার করে কোয়েরি ফলাফল অন্য কালেকশনে কপি করা

MongoDB শেলে find() কোয়েরির ফলাফল forEach() দিয়ে ইটারেট করে অন্য কালেকশনে (temp ডাটাবেসে) ইনসার্ট করা যায়। এটি একটি সিঙ্গল কোয়েরিতে সম্ভব।

নমুনা সংগ্রহ তৈরি

> db.demo43.insertOne({"StudentName":"Chris"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e25d4b3cfb11e5c34d898e5") }
> db.demo43.insertOne({"StudentName":"Bob"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e25d4b8cfb11e5c34d898e6") }
> db.demo43.insertOne({"StudentName":"David"});
{ "acknowledged" : true, "insertedId" : ObjectId("5e25d4bbcfb11e5c34d898e7") }

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

> db.demo43.find();

আউটপুট:


forEach() দিয়ে অন্য কালেকশনে কপি (demo44-এ)

> db.demo43.find().forEach(function(myDocument) { db.demo44.insert(myDocument); } )

কপি করা কালেকশন দেখানো:


ব্যাখ্যা: forEach() দিয়ে প্রতিটি ডকুমেন্ট demo44-এ ইনসার্ট করা হয়েছে। _id একই থাকার কারণ এটি কপি হয়েছে। MongoDB 4.2+ এ $out বা $merge স্টেজ অগ্রেশনে ব্যবহার করা ভালো।

  1. MongoDB কোয়ারিতে নির্দিষ্ট কলাম সিলেক্ট করা

  2. MongoDB ডাটাবেস পুরোপুরি ক্লিয়ার করা (dropDatabase)

  3. MongoDB-এ সাব-ডকুমেন্টসে ফাইন্ড কোয়েরি চালানো

  4. MongoDB-এ কেস-ইনসেনসিটিভ (Case-Insensitive) "Like" কোয়েরি (Regex /i)