MongoDB mongosh Find

डेटा ढूंढना और चुनना

डेटा ढूंढना

MongoDB कलेक्शन से डेटा ढूंढने और चुनने के 2 तरीके हैं, find() और findOne()।

find()

MongoDB में एक कलेक्शन से डेटा चुनने के लिए, हम find() विधि का उपयोग कर सकते हैं।

यह विधि एक क्वेरी ऑब्जेक्ट स्वीकार करती है। यदि खाली छोड़ दिया जाता है, तो सभी दस्तावेज़ वापस लाए जाते हैं।

उदाहरण

db.posts.find()

findOne()

केवल एक दस्तावेज़ चुनने के लिए, हम findOne() विधि का उपयोग कर सकते हैं।

यह विधि एक क्वेरी ऑब्जेक्ट स्वीकार करती है। यदि खाली छोड़ दिया जाता है, तो यह पहला मिलान दस्तावेज़ वापस लाएगा।

💡 नोट:

यह विधि केवल पहला मिलान वापस लाती है।

उदाहरण

db.posts.findOne()

डेटा क्वेरी करना

क्वेरी करने या डेटा को फ़िल्टर करने के लिए, हम अपनी find() या findOne() विधियों में एक क्वेरी जोड़ सकते हैं।

उदाहरण

db.posts.find( {category: "News"} )

Projection

दोनों find विधियाँ projection नामक दूसरे पैरामीटर को स्वीकार करती हैं।

यह पैरामीटर एक ऑब्जेक्ट है जो परिणामों में कौन से फ़ील्ड शामिल करने हैं, इसका वर्णन करता है।

💡 नोट:

यह पैरामीटर वैकल्पिक है। यदि छोड़ दिया जाता है, तो सभी फ़ील्ड परिणामों में शामिल किए जाएंगे।

उदाहरण

यह उदाहरण परिणामों में केवल title और date फ़ील्ड दिखाएगा।

db.posts.find({}, {title: 1, date: 1})

_id फ़ील्ड भी शामिल किया गया है, ध्यान दें। यह फ़ील्ड तब तक हमेशा शामिल किया जाता है जब तक इसे स्पष्ट रूप से बाहर नहीं किया जाता।

हम एक फ़ील्ड को शामिल करने के लिए 1 का उपयोग करते हैं और एक फ़ील्ड को बाहर करने के लिए 0 का उपयोग करते हैं।

उदाहरण

इस विधि में, हम _id फ़ील्ड को बाहर करेंगे।

db.posts.find({}, {_id: 0, title: 1, date: 1})

⚠️ नोट:

आप एक ही ऑब्जेक्ट में 0 और 1 दोनों का उपयोग नहीं कर सकते। _id फ़ील्ड ही अपवाद है। आपको उन फ़ील्ड को निर्दिष्ट करना चाहिए जिन्हें आप शामिल करना चाहते हैं या बाहर करना चाहते हैं।

हम date category फ़ील्ड को बाहर करेंगे। अन्य सभी फ़ील्ड परिणामों में शामिल किए जाएंगे।

उदाहरण

db.posts.find({}, {category: 0})

यदि हम एक ही ऑब्जेक्ट में 0 और 1 दोनों निर्दिष्ट करने का प्रयास करते हैं तो हमें एक त्रुटि मिलेगी।

उदाहरण

db.posts.find({}, {title: 1, date: 0})

अभ्यास

MongoDB में केवल एक दस्तावेज़ वापस पाने के लिए कौन सी विधि का उपयोग किया जाता है?

find()
✗ गलत! find() विधि कई दस्तावेज़ वापस लाएगी
findOne()
✓ सही! findOne() विधि केवल एक दस्तावेज़ वापस लाएगी
getOne()
✗ गलत! getOne() MongoDB में एक वैध विधि नहीं है
selectOne()
✗ गलत! selectOne() MongoDB में एक वैध विधि नहीं है