शुरुआत मैं क्यों सवाल एक इनाम है नहीं मिला पर (मैंने सोचा था कि सवाल एक अच्छा जवाब है और वहाँ है जोड़ने के लिए कुछ भी नहीं), लेकिन फिर मैंने देखा कि जिस जवाब को स्वीकार किया गया था और 15 बार उखाड़ फेंक दिया गया था वह वास्तव में गलत था!
हां, आपको $unset operator का उपयोग करना होगा, लेकिन यह अनसेट शब्द शब्दों को हटाने जा रहा है जो किसी संग्रह के लिए दस्तावेज़ के लिए मौजूद नहीं है। तो मूल रूप से यह कुछ भी नहीं करेगा।
तो आपको दस्तावेज़ टैग को देखने के लिए और फिर dot notation का उपयोग करने वाले शब्दों में मोंगो को बताना होगा। तो सही सवाल है।
db.example.update(
{},
{ $unset: {'tags.words':1}},
false, true
)
बस पूरा होने की खातिर मैं
another way of doing it के पास भेजेगा, जो बहुत खराब है के लिए
है, लेकिन इस तरह से आप किसी भी कस्टम कोड के साथ क्षेत्र को बदल सकते हैं (यहां तक कि इस दस्तावेज़ से दूसरे क्षेत्र के आधार पर)।
स्रोत
2013-11-10 07:31:08
क्या आप जानते हैं कि झूठी, सच्ची काम क्यों? –
नए संस्करण अधिक पढ़ने योग्य प्रारूप का समर्थन करते हैं: 'db.example.update ({}, {$ unset: {words: 1}}, {multi: true})' –
db.example.update ({}, {$ unset : {फ़ील्ड: 1, बहु: सत्य}}) निक की क्वेरी मेरे लिए काम नहीं करती है। –