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

MongoDB-এ দুটি ফিল্ডে FALSE মান থাকা ডকুমেন্ট বাদ দেওয়ার পদ্ধতি

MongoDB-এ দুটি বুলিয়ান ফিল্ড থেকে যেকোনো একটি true হলে ডকুমেন্ট বের করতে $expr এবং $or অপারেটর ব্যবহার করুন।

উদাহরণ

দুটি বুলিয়ান ফিল্ড সহ ডকুমেন্ট তৈরি করুন:

> db.orTwoFieldsDemo.insertOne({"isLiveInUS": true, "isMarried": false});
{ "acknowledged" : true, "insertedId" : ObjectId("5cdfd86abf3115999ed5120d") }

> db.orTwoFieldsDemo.insertOne({"isLiveInUS": true, "isMarried": true});
{ "acknowledged" : true, "insertedId" : ObjectId("5cdfd876bf3115999ed5120e") }

> db.orTwoFieldsDemo.insertOne({"isLiveInUS": false, "isMarried": false});
{ "acknowledged" : true, "insertedId" : ObjectId("5cdfd87dbf3115999ed5120f") }

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

> db.orTwoFieldsDemo.find();

আউটপুট:

{ "_id" : ObjectId("5cdfd86abf3115999ed5120d"), "isLiveInUS" : true, "isMarried" : false }
{ "_id" : ObjectId("5cdfd876bf3115999ed5120e"), "isLiveInUS" : true, "isMarried" : true }
{ "_id" : ObjectId("5cdfd87dbf3115999ed5120f"), "isLiveInUS" : false, "isMarried" : false }

উভয় ফিল্ড FALSE নয় এমন ডকুমেন্ট বের করা (অর্থাৎ কমপক্ষে একটি TRUE)

> db.orTwoFieldsDemo.find({ $expr: { $or: [ "$isLiveInUS", "$isMarried" ] } });

আউটপুট:

{ "_id" : ObjectId("5cdfd86abf3115999ed5120d"), "isLiveInUS" : true, "isMarried" : false }
{ "_id" : ObjectId("5cdfd876bf3115999ed5120e"), "isLiveInUS" : true, "isMarried" : true }

ব্যাখ্যা:

  • $expr — এগ্রিগেশন এক্সপ্রেশন ক্যোয়ারিতে ব্যবহার করার অনুমতি দেয়।
  • $or: ["$isLiveInUS", "$isMarried"] — ফিল্ড রেফারেন্স (ডলার সাইন সহ) ব্যবহার করে লজিক্যাল OR করা হয়েছে।
  • তৃতীয় ডকুমেন্টে দুটোই false, তাই বাদ পড়েছে।

বিকল্প (পুরানো ভার্সন): { $or: [ {isLiveInUS: true}, {isMarried: true} ] } — এটি ফিল্ড লেভেলে কাজ করে, এক্সপ্রেশন লেভেলে নয়।

  1. MongoDB-তে 와일্ডকার্ড দিয়ে নেস্টেড ফিল্ড এক্সক্লুড করা

  2. MongoDB-এ একাধিক ফিল্ডের অস্তিত্ব চেক করা

  3. MongoDB find()-এ নির্দিষ্ট ফিল্ড বাদ দেওয়া (Projection: 0)

  4. MongoDB-তে _id বাদে সব ফিল্ড দেখানো (JavaScript ফরইচ + প্রজেকশন)