MongoDB में db.collection.remove()
विधि संग्रह से दस्तावेजों को हटा देती है। दूसरे शब्दों में, यह उन्हें हटा देता है।
collection
भाग उस संग्रह का नाम है जिससे दस्तावेज़ों को निकालना है।
आप आवश्यकतानुसार सभी दस्तावेज़, कुछ दस्तावेज़ या एक दस्तावेज़ हटा सकते हैं।
सभी दस्तावेज़ हटाएं
इस उदाहरण में, हम employees
. नामक संग्रह से सभी दस्तावेज़ हटा देते हैं :
db.employees.remove({})
परिणाम:
WriteResult({ "nRemoved" : 5 })
परिणाम हमें दिखाता है कि पांच दस्तावेज़ हटा दिए गए थे।
चयनित दस्तावेज़ हटाएं
इस उदाहरण में, हम केवल कुछ दस्तावेज़ों को हटाते हैं।
सबसे पहले, आइए अपने कर्मचारियों के संग्रह को फिर से भरें:
db.employees.insertMany([
{ _id: 1, name: "Sandy", salary: 55000 },
{ _id: 2, name: "Sarah", salary: 128000 },
{ _id: 3, name: "Fritz", salary: 25000 },
{ _id: 4, name: "Chris", salary: 45000 },
{ _id: 5, name: "Beck", salary: 82000 }
])
आइए अब उन सभी कर्मचारियों को हटा दें जो प्रति वर्ष 80,000 से अधिक कमाते हैं।
db.employees.remove({ "salary": { $gt: 80000 } })
परिणाम:
WriteResult({ "nRemoved" : 2 })
इस बार केवल दो दस्तावेज़ निकाले गए।
आइए संग्रह पर एक नज़र डालें।
db.employees.find()
परिणाम:
{ "_id" : 1, "name" : "Sandy", "salary" : 55000 } { "_id" : 3, "name" : "Fritz", "salary" : 25000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 }
जैसा कि अपेक्षित था, दो शीर्ष वेतनभोगियों ने कंपनी छोड़ दी है।
एक दस्तावेज़ निकालें
संग्रह से किसी एक दस्तावेज़ को निकालने के दो तरीके हैं। आपके द्वारा उपयोग की जाने वाली विधि इस बात पर निर्भर करेगी कि आपको क्या करने की आवश्यकता है।
आप या तो कर सकते हैं:
- एक विशिष्ट दस्तावेज़ निकालें
justOne
का उपयोग करें पैरामीटर
एक विशिष्ट दस्तावेज़ निकालें
यदि आपको किसी विशिष्ट दस्तावेज़ को निकालने की आवश्यकता है, तो आप दस्तावेज़ का _id
. निर्दिष्ट कर सकते हैं उस विशिष्ट दस्तावेज़ को हटाने के लिए मूल्य।
इसलिए यदि हम उपरोक्त संग्रह से फ्रिट्ज कहना चाहते हैं, तो हम उसका _id
. निर्दिष्ट कर सकते हैं 3
. का मान . इस तरह:
db.employees.remove({ "_id": 3 })
परिणाम:
WriteResult({ "nRemoved" : 1 })
और चलिए फिर से संग्रह की जाँच करते हैं:
db.employees.find()
परिणाम:
{ "_id" : 1, "name" : "Sandy", "salary" : 55000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 }
जैसी कि उम्मीद थी, फ़्रिट्ज़ अब गायब हो गया है।
justOne
का उपयोग करें पैरामीटर
आप वैकल्पिक रूप से justOne
. का उपयोग कर सकते हैं केवल एक दस्तावेज़ को हटाने को सीमित करने के लिए पैरामीटर। यह पहले दस्तावेज़ को हटा देता है जो विलोपन मानदंड से मेल खाता है।
इस बिंदु को यथासंभव स्पष्ट रूप से प्रदर्शित करने के लिए, आइए संग्रह से सभी शेष दस्तावेज़ों को हटा दें और फिर इसे फिर से तैयार करें:
db.employees.remove({})
db.employees.insertMany([
{ _id: 1, name: "Sandy", salary: 55000 },
{ _id: 2, name: "Sarah", salary: 128000 },
{ _id: 3, name: "Fritz", salary: 25000 },
{ _id: 4, name: "Chris", salary: 45000 },
{ _id: 5, name: "Beck", salary: 82000 }
])
ठीक है, तो हम जानते हैं कि हमारे संग्रह में पाँच दस्तावेज़ हैं।
आइए अब justOne
. का उपयोग करें एकल दस्तावेज़ को निकालने के लिए पैरामीटर।
db.employees.remove({}, "justOne: true")
परिणाम:
WriteResult({ "nRemoved" : 1 })
और यह देखने के लिए संग्रह की जाँच करें कि कौन सा दस्तावेज़ हटा दिया गया था।
db.employees.find()
परिणाम:
{ "_id" : 2, "name" : "Sarah", "salary" : 128000 } { "_id" : 3, "name" : "Fritz", "salary" : 25000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 } { "_id" : 5, "name" : "Beck", "salary" : 82000 }
जैसा कि अपेक्षित था, पहला दस्तावेज़ हटा दिया गया था।
justOne
पैरामीटर में एक और वाक्यविन्यास भी है। आप इसे किसी दस्तावेज़ के अंदर भी उपयोग कर सकते हैं। यदि आप अन्य तर्कों को विधि में पारित करने जा रहे हैं, तो आपको यह करने की आवश्यकता होगी।
यहां एक उदाहरण दिया गया है।
db.employees.remove(
{},
{
justOne: true,
writeConcern: { w: "majority", wtimeout: 3000 },
collation: { locale: "de", strength: 1 }
}
)
परिणाम:
WriteResult({ "nRemoved" : 1 })
और आइए संग्रह पर एक और नज़र डालें
db.employees.find()
परिणाम:
{ "_id" : 3, "name" : "Fritz", "salary" : 25000 } { "_id" : 4, "name" : "Chris", "salary" : 45000 } { "_id" : 5, "name" : "Beck", "salary" : 82000 }
जैसा अपेक्षित था, अगला दस्तावेज़ हटा दिया गया था।
अधिक जानकारी
अधिक जानकारी के लिए MongoDB दस्तावेज़ देखें।