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

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

<घंटा/>

आप निम्न सिंटैक्स का उपयोग करके एक विशिष्ट फ़ील्ड को 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")
}

संग्रह से सभी दस्तावेज़ों को ढूँढें () विधि की सहायता से प्रदर्शित करें। क्वेरी इस प्रकार है -

> 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().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 से प्रारंभ किया है। इसका मतलब है कि यह सभी दस्तावेज़ों से केवल "तकनीकी विषय" फ़ील्ड लौटाएगा।

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

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

> db.retunFieldInFindDemo.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 - जैसा कि आप जानते हैं, यदि आप केवल खोजने के लिए उपयोग करते हैं () तो यह सभी फ़ील्ड लौटाता है।

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

> db.retunFieldInFindDemo.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 के साथ कार्य करना ()

    MongoDB में खोज () संग्रह या दृश्य में दस्तावेज़ों का चयन करता है और चयनित दस्तावेज़ों पर एक कर्सर लौटाता है। बिना पैरामीटर वाली खोज () विधि संग्रह से सभी दस्तावेज़ लौटाती है और दस्तावेज़ों के लिए सभी फ़ील्ड लौटाती है। आइए एक उदाहरण देखें और दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo405.inser

  1. कुछ क्षेत्रों को खोजने () में बाहर करने के लिए MongoDB संग्रह क्वेरी?

    उन फ़ील्ड को सेट करें जिन्हें आप नीचे दिए गए सिंटैक्स में 0 के रूप में शामिल नहीं करना चाहते हैं। यहां, हमने yourFieldName1 और yourFieldName2 फ़ील्ड को 0 के रूप में सेट किया है - db.yourCollectionName.find(yourQuery, {yourFieldName1:0,yourFieldName2:0}); उपरोक्त सिंटैक्स को समझने के लिए, आइए हम दस्

  1. MongoDB में सभी मानों से मेल खाने के लिए एकत्रीकरण के साथ कार्य करना

    MongoDB में सभी मानों का मिलान करने के लिए, $match के साथ $ और एकत्रीकरण का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo574.insertOne( ...    { ...       "details1": { ...          "details2": { ...   &nbs