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

MongoDB के साथ एक सरणी फ़ील्ड मान बदलें?

<घंटा/>

आप स्थितीय ऑपरेटर $ का उपयोग कर सकते हैं। आइए पहले दस्तावेजों के साथ एक संग्रह बनाएं -

> db.replaceAnArrayFieldValueDemo.insertOne({"StudentTechnicalSubjects":["MySQL","SQL Server","PL/SQL"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5cea41e0ef71edecf6a1f68f")
}

खोज () विधि की मदद से संग्रह से सभी दस्तावेजों को प्रदर्शित करने के लिए क्वेरी निम्नलिखित है -

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

यह निम्नलिखित आउटपुट देगा -

{
   "_id" : ObjectId("5cea41e0ef71edecf6a1f68f"),
   "StudentTechnicalSubjects" : [
      "MySQL",
      "SQL Server",
      "PL/SQL"
   ]
}

सरणी फ़ील्ड मान को बदलने के लिए क्वेरी निम्नलिखित है। यहां, हम "एसक्यूएल सर्वर" को "मोंगोडीबी" के साथ अपडेट कर रहे हैं -

> db.replaceAnArrayFieldValueDemo.update(
   {"StudentTechnicalSubjects":"SQL Server"},
   { $set: { 'StudentTechnicalSubjects.$': "MongoDB" }}
);
WriteResult({ "nMatched" : 0, "nUpserted" : 0, "nModified" : 0 })

आइए एक बार फिर से दस्तावेज़ की जाँच करें -

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

यह निम्नलिखित आउटपुट देगा -

{
   "_id" : ObjectId("5cea41e0ef71edecf6a1f68f"),
   "StudentTechnicalSubjects" : [
      "MySQL",
      "MongoDB",
      "PL/SQL"
   ]
}

  1. यदि आईडी किसी दस्तावेज़ फ़ील्ड सरणी मान के बराबर है, तो बाहर करने के लिए MongoDB क्वेरी

    इसके लिए $in के साथ $not का प्रयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - [    {       id: "101",       subjectid: [          "102"       ]    },    {       i

  1. MongoDB स्ट्रिंग के साथ एकल सरणी मान को बदलें?

    प्रतिस्थापित करने के लिए, $set और positional($) ऑपरेटर का उपयोग करें। आइए दस्तावेजों के साथ एक संग्रह बनाएं - db.demo564.insertOne({StudentName:[Chris,,David,,Mike,,Sam]});{ acknowledge :true, insertId :ObjectId(5e90880a39cfeaaf0b97b576 )} संग्रह से सभी दस्तावेज़ों को खोजने () विधि की सहायता से प्

  1. विशिष्ट फ़ील्ड मान वाले दस्तावेज़ प्राप्त करने के लिए MongoDB एकत्रीकरण?

    इसके लिए एग्रीगेट () का इस्तेमाल करें। मान लें कि हमें 21 मान वाले आयु फ़ील्ड वाले दस्तावेज़ लाने हैं। आइए अब दस्तावेजों के साथ एक संग्रह बनाएं - > db.demo685.insertOne( ...    { ...       "details": ...       [ ...         &n