बूलियन फ़ील्ड द्वारा फ़िल्टर करना
एक बूलियन फ़ील्ड (जैसे isEnable) के आधार पर दस्तावेज़ फ़िल्टर करने के लिए, आप $ne (Not Equal) या सीधे मान false का उपयोग कर सकते हैं।
उदाहरण: नमूना डेटा बनाना
> db.translateDefinitionDemo.insertOne({"_id":10,"StudentName":"Larry","isEnable":true});
{ "acknowledged" : true, "insertedId" : 10 }
> db.translateDefinitionDemo.insertOne({"_id":20,"StudentName":"Chris","isEnable":false});
{ "acknowledged" : true, "insertedId" : 20 }
> db.translateDefinitionDemo.insertOne({"_id":30,"StudentName":"Robert","isEnable":true});
{ "acknowledged" : true, "insertedId" : 30 }
> db.translateDefinitionDemo.insertOne({"_id":40,"StudentName":"Sam","isEnable":false});
{ "acknowledged" : true, "insertedId" : 40 }
> db.translateDefinitionDemo.insertOne({"_id":50,"StudentName":"Mike","isEnable":true});
{ "acknowledged" : true, "insertedId" : 50 }
सभी दस्तावेज़ देखना
> db.translateDefinitionDemo.find().pretty();
आउटपुट:
केवल FALSE मान वाले दस्तावेज़ प्राप्त करने की क्वेरी
मूल उदाहरण
$inऔर$neका उपयोग करता है, लेकिन सीधा तरीका यह है:> db.translateDefinitionDemo.find({ "isEnable": false }).pretty();या
$neका उपयोग करके:> db.translateDefinitionDemo.find({ "isEnable": { $ne: true } }).pretty();आउटपुट (दोनों के लिए समान):
सर्वोत्तम अभ्यास: सरलता और पठनीयता के लिए सीधे
{ "isEnable": false }का उपयोग करें।$neका उपयोग तब करें जब आपको किसी मान को बाहर करना हो लेकिन सटीक विपरीत मान निर्दिष्ट न करना हो।