Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

क्या MongoDB में collection.find() हमेशा सभी फ़ील्ड लौटाता है?


आप collection.find() से निम्न सिंटैक्स का उपयोग करके एक विशिष्ट फ़ील्ड लौटा सकते हैं।

केस 1 - सिंटैक्स इस प्रकार है:

db.yourCollectionName.find({},{ "yourFieldName":1 }).pretty();

उपरोक्त फ़ील्ड नाम को 1 पर सेट करने का अर्थ है कि यह केवल उस फ़ील्ड को लौटाएगा। यदि आप इसे 0 पर सेट करते हैं तो यह उस फ़ील्ड को छोड़कर सभी फ़ील्ड लौटाएगा जिसे 0 पर सेट किया गया है।

केस 2 - सिंटैक्स इस प्रकार है:

db.yourCollectionName.find({},{ "yourFieldName":0 }).pretty();

उपरोक्त सिंटैक्स को समझने के लिए, एक दस्तावेज़ के साथ एक संग्रह बनाते हैं। दस्तावेज़ के साथ संग्रह बनाने की क्वेरी इस प्रकार है:

> db.returnFieldInFindDemo.insertOne({"StudentName":"John","StudentAge":23,"TechnicalSubject":["MongoDB","MySQL"]}); { "acknowledged" : true, "insertedId" : ObjectId("5c8ebfe72f684a30fbdfd566") } > db.returnFieldInFindDemo.insertOne({"StudentName":"Mike","StudentAge":24,"TechnicalSubject":["Java","Python"]}); { "acknowledged" : true, "insertedId" : ObjectId("5c8ebffd2f684a30fbdfd567") } > db.returnFieldInFindDemo.insertOne({"StudentName":"Sam","StudentAge":22,"TechnicalSubject":["C","C++"]}); { "acknowledged" : true, "insertedId" : ObjectId("5c8ec00f2f684a30fbdfd568") } > db.returnFieldInFindDemo.insertOne({"StudentName":"Carol","StudentAge":20,"TechnicalSubject":["DataStructure","Algorithm"]}); { "acknowledged" : true, "insertedId" : ObjectId("5c8ec0292f684a30fbdfd569") }

find() विधि की मदद से संग्रह से सभी दस्तावेज़ प्रदर्शित करें। क्वेरी इस प्रकार है:

> db.returnFieldInFindDemo.find().pretty();

आउटपुट निम्न है:

{ "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"), "StudentName" : "John", "StudentAge" : 23, "TechnicalSubject" : [ "MongoDB", "MySQL" ] } { "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"), "StudentName" : "Mike", "StudentAge" : 24, "TechnicalSubject" : [ "Java", "Python" ] } { "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"), "StudentName" : "Sam", "StudentAge" : 22, "TechnicalSubject" : [ "C", "C++" ] } { "_id" : ObjectId("5c8ec0292f684a30fbdfd569"), "StudentName" : "Carol", "StudentAge" : 20, "TechnicalSubject" : [ "DataStructure", "Algorithm" ] }

केस 1 - यहाँ वह क्वेरी है जिससे आप विशिष्ट फ़ील्ड लौटाएंगे।

क्वेरी इस प्रकार है:

> db.returnFieldInFindDemo.find({}, {"TechnicalSubject":1}).pretty();

आउटपुट:

{ "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"), "TechnicalSubject" : [ "MongoDB", "MySQL" ] } { "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"), "TechnicalSubject" : [ "Java", "Python" ] } { "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"), "TechnicalSubject" : [ "C", "C++" ] } { "_id" : ObjectId("5c8ec0292f684a30fbdfd569"), "TechnicalSubject" : [ "DataStructure", "Algorithm" ] }

उपरोक्त नमूना आउटपुट को देखें, मैंने फ़ील्ड "TechnicalSubject" को 1 पर आरंभ किया है। इसका अर्थ है कि यह सभी दस्तावेज़ों से केवल "TechnicalSubject" फ़ील्ड लौटाएगा।

केस 2 - दूसरे मामले में, यदि आप फ़ील्ड "TechnicalSubject" को 0 पर सेट करते हैं तो इसका अर्थ है कि आपको "TechnicalSubject" को छोड़कर सभी फ़ील्ड मिलेंगे।

क्वेरी इस प्रकार है:

> db.returnFieldInFindDemo.find({},{ "TechnicalSubject":0 }).pretty();

आउटपुट निम्न है:

{ "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"), "StudentName" : "John", "StudentAge" : 23 } { "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"), "StudentName" : "Mike", "StudentAge" : 24 } { "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"), "StudentName" : "Sam", "StudentAge" : 22 } { "_id" : ObjectId("5c8ec0292f684a30fbdfd569"), "StudentName" : "Carol", "StudentAge" : 20 }

केस 3 - जैसा कि आप जानते हैं, यदि आप केवल find() का उपयोग करते हैं तो यह सभी फ़ील्ड लौटाता है।

क्वेरी इस प्रकार है:

> db.returnFieldInFindDemo.find();

आउटपुट निम्न है:

{ "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"), "StudentName" : "John", "StudentAge" : 23, "TechnicalSubject" : [ "MongoDB", "MySQL" ] } { "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"), "StudentName" : "Mike", "StudentAge" : 24, "TechnicalSubject" : [ "Java", "Python" ] } { "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"), "StudentName" : "Sam", "StudentAge" : 22, "TechnicalSubject" : [ "C", "C++" ] } { "_id" : ObjectId("5c8ec0292f684a30fbdfd569"), "StudentName" : "Carol", "StudentAge" : 20, "TechnicalSubject" : [ "DataStructure", "Algorithm" ] }

  1. - MongoDB find() मेथड के साथ काम करना

    MongoDB में find() मेथड का उपयोग करके दस्तावेज़ क्वेरी करना MongoDB में find() मेथड संग्रह या व्यू में दस्तावेज़ों को चुनता है और चयनित दस्तावेज़ों के लिए एक कर्सर लौटाता है। बुनियादी उपयोग पैरामीटर के बिना find() संग्रह के सभी दस्तावेज़ लौटाता है और दस्तावेज़ों के सभी फील्ड्स शामिल करता है। उदाहर

  1. - MongoDB Collection Query - Find() में Some Fields Exclude करना

    जिन fields को include नहीं करना उन्हें 0 set करें। यहाँ हमने fields yourFieldName1 और yourFieldName2 को 0 set किया: db.yourCollectionName.find(yourQuery, {yourFieldName1:0,yourFieldName2:0}); Collection बनाना > db.demo567.insertOne({Name:Chris,Age:21}); { acknowledged : true, insertedId : Object

  1. - MongoDB में एग्रीगेशन का उपयोग करके सभी मानों को मैच करें

    MongoDB में सभी मानों को मैच करने के लिए, एग्रीगेशन में $match के साथ $and का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo574.insertOne({ details1: { details2: { dueDate: new ISODate(2020-01-10), Name: Chris, UserInformation: {