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

MongoDB में ऐरे के n-th एलिमेंट को कैसे डिलीट करें?


$unset और $pull से ऐरे का nth एलिमेंट हटाएं

MongoDB में ऐरे के विशिष्ट इंडेक्स (nth position) पर स्थित एलिमेंट को हटाने के लिए $unset के बाद $pull का उपयोग करें।

उदाहरण डेटा

> db.getNThElementDemo.insertOne({"UserName":"John","UserAge":23,"ListOfFriends":["Carol","Sam","Mike","Bob"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c94ee7516f542d757e2b43e") }
> db.getNThElementDemo.insertOne({"UserName":"David","UserAge":21,"ListOfFriends":["Chris","Robert"]});
{ "acknowledged" : true, "insertedId" : ObjectId("5c94eeaa16f542d757e2b43f") }

सभी दस्तावेज़:

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

तीसरा एलिमेंट (इंडेक्स 2) हटाएं: "Mike"

> db.getNThElementDemo.update({}, {$unset: {"ListOfFriends.2": 1}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
> db.getNThElementDemo.update({}, {$pull: {"ListOfFriends": null}});
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })

परिणाम देखें:

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

प्रक्रिया:

  1. $unset इंडेक्स 2 पर null सेट करता है (ऐरे में छेद छोड़ता है)
  2. $pull सभी null मानों को ऐरे से हटा देता है

नोट: यह उदाहरण केवल पहले मिलान वाले दस्तावेज़ को अपडेट करता है (update बिना multi के)। सभी दस्तावेज़ अपडेट करने के लिए updateMany या multi: true उपयोग करें।

  1. - MongoDB में Document से Array Value Delete करना

    Array values delete करने के लिए MongoDB में $pull का उपयोग करें। $pull operator existing array से उन सभी instances को remove करता है जो specified condition से match करते हैं। Collection बनाना > db.demo535.insertOne( ... { ... studentId : 101, ... studentName : Chris, ... ListOfMailIds : [

  1. - MongoDB Array में Element Remove करना

    Element remove करने के लिए update में $pull का उपयोग करें। $pull operator existing array से उन सभी instances को remove करता है जो specified condition से match करते हैं। Collection बनाना db.demo541.insertOne({software:{services:[gmail,facebook,yahoo]}}); { acknowledged : true, insertedId : ObjectId(

  1. - C# एरे से एलिमेंट डिलीट/रिमूव कैसे करें

    C# एरे से एलिमेंट हटाना C# में एरे फिक्स्ड साइज़ के होते हैं; एक बार बनने के बाद उनका आकार नहीं बदल सकता। डिलीट करने के लिए आपको: निर्दिष्ट इंडेक्स के बाद के एलिमेंट्स को एक स्थान बाएं शिफ्ट करना होगा। लॉजिकल साइज़ कम करना होगा (या नया छोटा एरे बनाना)। शिफ्टिंग एल्गोरिदम // pos = डिलीट करने की पो