MongoDB में $push ऑपरेटर का उपयोग करके ऐरे में एलिमेंट जोड़ना
$push ऑपरेटर किसी मौजूदा ऐरे फ़ील्ड में एक मान जोड़ता है। यदि फ़ील्ड मौजूद नहीं है, तो यह ऐरे बनाता है।
सैंपल डेटा बनाना
> db.demo253.insertOne({
_id: "101",
isActive: false,
details: [
{ Name: "Chris" },
{ CountryName: "US" }
]
});
{ "acknowledged" : true, "insertedId" : "101" }
दस्तावेज़ देखना (अपडेट से पहले)
> db.demo253.find();
आउटपुट:
$push के साथ ऐरे में नया एलिमेंट जोड़ना
> db.demo253.update( { _id: '101' }, { $push: { details: { Age: 21 } } } ); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })अपडेटेड दस्तावेज़ देखना
> db.demo253.find();आउटपुट:
$push के उन्नत उपयोग
प्रत्येक मोडिफायर के साथ एकाधिक मान जोड़ना
> db.demo253.update( { _id: '101' }, { $push: { details: { $each: [ { City: "NYC" }, { Zip: "10001" } ] } } } );$position के साथ विशिष्ट स्थान पर जोड़ना
> db.demo253.update( { _id: '101' }, { $push: { details: { $each: [ { NewField: "First" } ], $position: 0 } } } );$slice के साथ ऐरे आकार सीमित करना
> db.demo253.update( { _id: '101' }, { $push: { details: { $each: [ {} ], $slice: -5 } } } // केवल अंतिम 5 रखें );महत्वपूर्ण: update() vs updateOne()/updateMany()
उदाहरण में deprecated
update()उपयोग किया गया है। आधुनिक MongoDB में:> db.demo253.updateOne( { _id: '101' }, { $push: { details: { Age: 21 } } } );