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

MongoDB-তে NAND অপারেটর দিয়ে কোয়েরি করা


$not অপারেটর জটিল এক্সপ্রেশন ইনভার্ট করতে পারে না। তাই $and বা $or-এর সাথে $ne অপারেটর ব্যবহার করুন।

ডকুমেন্টসহ একটি কলেকশন তৈরি করি:

> db.demo266.insertOne({"active1":true,"active2":false});
{ "acknowledged" : true, "insertedId" : ObjectId("5e480f4b1627c0c63e7dbaa7") }
> db.demo266.insertOne({"active1":true,"active2":true});
{ "acknowledged" : true, "insertedId" : ObjectId("5e480f501627c0c63e7dbaa8") }
> db.demo266.insertOne({"active1":false,"active2":false});
{ "acknowledged" : true, "insertedId" : ObjectId("5e480f561627c0c63e7dbaa9") }
> db.demo266.insertOne({"active1":false,"active2":true});
{ "acknowledged" : true, "insertedId" : ObjectId("5e480f701627c0c63e7dbaaa") }

find() মেথড দিয়ে সব ডকুমেন্ট দেখান:

> db.demo266.find();

আউটপুট:

{ "_id" : ObjectId("5e480f4b1627c0c63e7dbaa7"), "active1" : true, "active2" : false }
{ "_id" : ObjectId("5e480f501627c0c63e7dbaa8"), "active1" : true, "active2" : true }
{ "_id" : ObjectId("5e480f561627c0c63e7dbaa9"), "active1" : false, "active2" : false }
{ "_id" : ObjectId("5e480f701627c0c63e7dbaaa"), "active1" : false, "active2" : true }

$or সাথে $ne অপারেটর ব্যবহার করার কোয়েরি (NAND লজিক):

> db.demo266.find({$or:[{"active1":{"$ne":true}},{"active2":{"$ne":true}}]});

ফলাফল (যেখানে active1 এবং active2 উভয় true নয়):

{ "_id" : ObjectId("5e480f4b1627c0c63e7dbaa7"), "active1" : true, "active2" : false }
{ "_id" : ObjectId("5e480f561627c0c63e7dbaa9"), "active1" : false, "active2" : false }
{ "_id" : ObjectId("5e480f701627c0c63e7dbaaa"), "active1" : false, "active2" : true }

  1. MongoDB-এ কেস-ইনসেনসিটিভ (Case-Insensitive) কোয়ারি করা (Regex)

  2. MongoDB-তে LIMIT ব্যবহার করে কোয়ারি করার পদ্ধতি

  3. MongoDB-এ নির্দিষ্ট ডেট ফরম্যাটে কোয়েরি ফিল্টার করা

  4. MongoDB-এ bulkWrite() দিয়ে এক কোয়েরিতে একাধিক ডকুমেন্ট আপডেট করা