toLowerCase() मेथड से केस-इनसेंसिटिव खोज करें
MongoDB शेल में JavaScript के toLowerCase() मेथड का उपयोग करके खोज मान को लोअरकेस में बदलें और फिर क्वेरी करें। यह केस-इनसेंसिटिव खोज का एक सरल तरीका है।
उदाहरण: संग्रह बनाना
> db.demo172.insertOne({"SubjectName": "MySQL"});
{ "acknowledged": true, "insertedId": ObjectId("5e3838ce9e4f06af551997e1") }
> db.demo172.insertOne({"SubjectName": "mongodb"});
{ "acknowledged": true, "insertedId": ObjectId("5e3838d69e4f06af551997e2") }
> db.demo172.insertOne({"SubjectName": "MongoDB"});
{ "acknowledged": true, "insertedId": ObjectId("5e3838db9e4f06af551997e3") }
सभी डॉक्यूमेंट्स देखना
> db.demo172.find();
{ "_id": ObjectId("5e3838ce9e4f06af551997e1"), "SubjectName": "MySQL" }
{ "_id": ObjectId("5e3838d69e4f06af551997e2"), "SubjectName": "mongodb" }
{ "_id": ObjectId("5e3838db9e4f06af551997e3"), "SubjectName": "MongoDB" }
लोअरकेस में खोज करने की क्वेरी
खोज शब्द "MONGODB" को लोअरकेस में बदलकर क्वेरी करें:
> db.demo172.find({"SubjectName": "MONGODB".toLowerCase()});
आउटपुट:
{ "_id": ObjectId("5e3838d69e4f06af551997e2"), "SubjectName": "mongodb" }
केवल वही डॉक्यूमेंट मेल खाता है जिसका SubjectName पहले से लोअरकेस "mongodb" है।
बेहतर तरीका: प्रोडक्शन में केस-इनसेंसिटिव खोज के लिए
$regexके साथ$options: "i"या टेक्स्ट इंडेक्स का उपयोग करें।toLowerCase()केवल शेल में क्लाइंट-साइड तुलना करता है।