Mongodb: कैसे जांचें कि फ़ील्ड में कोई स्ट्रिंग है या नहीं


यह जांचने के लिए कि किसी निश्चित फ़ील्ड में कोई विशिष्ट स्ट्रिंग है या नहीं, आप MongoDB में निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 db.collection.findOne({ name : { $regex : /string/ }})

निम्नलिखित उदाहरण दिखाते हैं कि निम्नलिखित दस्तावेज़ों वाली संग्रह टीम के साथ इस सिंटैक्स का उपयोग कैसे करें:

 db.teams.insertOne({team: " Mavs ", position: " Guard ", points: 31 })
db.teams.insertOne({team: " Spurs ", position: " Guard ", points: 22 })
db.teams.insertOne({team: " Rockets ", position: " Center ", points: 19 })
db.teams.insertOne({team: " Warriors ", position: " Forward ", points: 26 })
db.teams.insertOne({team: " Cavs ", position: " Guard ", points: 33 })

उदाहरण 1: जांचें कि फ़ील्ड में कोई स्ट्रिंग है या नहीं

हम यह जांचने के लिए निम्नलिखित कोड का उपयोग कर सकते हैं कि क्या टीम फ़ील्ड में “avs” स्ट्रिंग वाला कोई दस्तावेज़ है:

 db.teams.findOne({ team : { $regex : /avs/ }}) 

यह क्वेरी निम्नलिखित दस्तावेज़ लौटाती है:

 { _id: ObjectId("618050098ffcfe76d07b1da5"),
  team: 'Mavs',
  position: 'Guard',
  points: 31 }

ध्यान दें कि findOne() फ़ंक्शन संग्रह में पहला दस्तावेज़ लौटाता है जो क्वेरी मानदंडों को पूरा करता है।

इसका मतलब यह है कि अन्य टीमों के पास भी अपनी टीम के नाम में “avs” स्ट्रिंग हो सकती है, लेकिन टीम का नाम “Mavs” वाला दस्तावेज़ केवल पहला था।

उदाहरण 2: जांचें कि क्या फ़ील्ड में कोई स्ट्रिंग है (केस असंवेदनशील)

केस-असंवेदनशील मिलान बनाने के लिए हम स्ट्रिंग के बाद i का भी उपयोग कर सकते हैं।

उदाहरण के लिए, मान लीजिए कि हम निम्नलिखित क्वेरी का उपयोग करते हैं:

 db.teams.findOne({ team : { $regex : /AVS/i }}) 

यह क्वेरी निम्नलिखित दस्तावेज़ भी लौटाती है:

 { _id: ObjectId("618050098ffcfe76d07b1da5"),
  team: 'Mavs',
  position: 'Guard',
  points: 31 }

उदाहरण 3: जांचें कि क्या फ़ील्ड में कोई स्ट्रिंग है (कोई परिणाम नहीं)

यदि किसी फ़ील्ड में वह विशिष्ट स्ट्रिंग नहीं है जिसे हम ढूंढ रहे हैं, तो हम तदनुसार शून्य प्राप्त करेंगे।

उदाहरण के लिए, मान लीजिए कि हम निम्नलिखित क्वेरी का उपयोग करते हैं:

 db.teams.findOne({ team : { $regex : /ricks/ }})

यह क्वेरी निम्नलिखित परिणाम लौटाती है:

 null

चूँकि किसी भी दस्तावेज़ में टीम के नाम में स्ट्रिंग “रिक्स” शामिल नहीं है, परिणामस्वरूप हमें शून्य प्राप्त होता है।

नोट : आप $regex के लिए संपूर्ण दस्तावेज़ यहां पा सकते हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि MongoDB में अन्य सामान्य ऑपरेशन कैसे करें:

MongoDB: किसी विशिष्ट फ़ील्ड में “शून्य नहीं” की खोज कैसे करें
MongoDB: “लाइक” रेगुलर एक्सप्रेशन के साथ क्वेरी कैसे करें
MongoDB: किसी संग्रह में नया फ़ील्ड कैसे जोड़ें
MongoDB: प्रत्येक दस्तावेज़ से एक फ़ील्ड कैसे हटाएं

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *