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

MongoDB में ऐरे से एकाधिक मान निकालने के लिए क्वेरी

MongoDB में $pull ऑपरेटर का उपयोग करके ऐरे से मान निकालना

MongoDB में किसी ऐरे से विशिष्ट मानों को निकालने के लिए $pull ऑपरेटर का उपयोग किया जाता है। जब आपको एकाधिक दस्तावेज़ों से मान निकालने हों, तो multi: true विकल्प सेट करें।

उदाहरण: संग्रह और दस्तावेज़ बनाना

सबसे पहले, एक संग्रह बनाते हैं जिसमें नेस्टेड ऐरे वाले दस्तावेज़ हों:

> db.demo392.insertOne(
  {
    Name: 'Chris',
    details: [
      { _id: '101' },
      { _id: '102' }
    ]
  }
);
{ "acknowledged" : true, "insertedId" : ObjectId("5e5d2b3322064be7ab44e802") }

> db.demo392.insertOne(
  {
    Name: 'Chris',
    details: [
      { _id: '104' },
      { _id: '101' }
    ]
  }
);
{ "acknowledged" : true, "insertedId" : ObjectId("5e5d2b3422064be7ab44e803") }

सभी दस्तावेज़ देखना

> db.demo392.find();

आउटपुट:

{ "_id" : ObjectId("5e5d2b3322064be7ab44e802"), "Name" : "Chris", "details" : [ { "_id" : "101" }, { "_id" : "102" } ] }
{ "_id" : ObjectId("5e5d2b3422064be7ab44e803"), "Name" : "Chris", "details" : [ { "_id" : "104" }, { "_id" : "101" } ] }

$pull के साथ मान निकालना

अब _id: '101' वाले सभी तत्वों को details ऐरे से निकालते हैं:

> db.demo392.update(
  { },
  { $pull: { details: { _id: '101' } } },
  { multi: true }
)
WriteResult({ "nMatched" : 2, "nUpserted" : 0, "nModified" : 2 })

परिणाम सत्यापित करना

> db.demo392.find();

आउटपुट:

{ "_id" : ObjectId("5e5d2b3322064be7ab44e802"), "Name" : "Chris", "details" : [ { "_id" : "102" } ] }
{ "_id" : ObjectId("5e5d2b3422064be7ab44e803"), "Name" : "Chris", "details" : [ { "_id" : "104" } ] }

मुख्य बिंदु: multi: true विकल्प सुनिश्चित करता है कि क्वेरी सभी मिलान करने वाले दस्तावेज़ों को अपडेट करे, न कि केवल पहले को।

  1. - MongoDB में ऑब्जेक्ट ऐरे से विशिष्ट मान कैसे प्राप्त करें?

    MongoDB में ऑब्जेक्ट ऐरे से विशिष्ट मान प्राप्त करने के लिए distinct() मेथड का उपयोग करें। आइए दस्तावेज़ों के साथ एक संग्रह बनाएं: > db.demo442.insertOne( ...    { ... ...       "Information" : [ ...          { ...      

  1. - MongoDB में सबडॉक्यूमेंट्स के ऐरे को कैसे क्वेरी करें?

    सबडॉक्यूमेंट्स के ऐरे को क्वेरी करने के लिए MongoDB में $unwind का उपयोग करें। नमूना डेटा बनाना (सबडॉक्यूमेंट्स ऐरे) db.demo499.insertOne({ details: [ { Name:MIT, Rank: 1, CountryName:US }, { Name:Stanford University, Rank: 2 }, { Name:University of California, Berkeley, Rank: 3 }

  1. - MongoDB क्वेरी: कलेक्शन से पूरा ऐरे हटाएं

    कलेक्शन से पूरा ऐरे हटाने के लिए, MongoDB में $unset का उपयोग करें। आइए दस्तावेजों के साथ एक कलेक्शन बनाते हैं: > db.demo609.insertOne({ListOfSubject:[MySQL,MongoDB]}); { acknowledged : true, insertedId : ObjectId(5e974695f57d0dc0b182d62c) } > db.demo609.insertOne({ListOfSubject:[Java]}); { a