
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Update Value of a Key in a List of JSON in MongoDB
Let us first create a collection with documents
> db.updateListOfKeyValuesDemo.insertOne( { "StudentDetails":[ { "StudentName":"John", "StudentAge":23, "StudentCountryName":"US" }, { "StudentName":"Carol", "StudentAge":24, "StudentCountryName":"UK" }, { "StudentName":"Bob", "StudentAge":22, "StudentCountryName":"AUS" } ] } ); { "acknowledged" : true, "insertedId" : ObjectId("5c9b5b759882024390176545") }
Following is the query to display all documents from a collection with the help of find() method
> db.updateListOfKeyValuesDemo.find().pretty();
This will produce the following output
{ "_id" : ObjectId("5c9b5b759882024390176545"), "StudentDetails" : [ { "StudentName" : "John", "StudentAge" : 23, "StudentCountryName" : "US" }, { "StudentName" : "Carol", "StudentAge" : 24, "StudentCountryName" : "UK" }, { "StudentName" : "Bob", "StudentAge" : 22, "StudentCountryName" : "AUS" } ] }
Following is the query to update value of a key in a list of a json in MongoDB
> var documentFromCollection = db.updateListOfKeyValuesDemo.findOne({ ... "_id": ObjectId("5c9b5b759882024390176545") ... }); > > documentFromCollection.StudentDetails.forEach(function(updateStudent) { ... updateStudent.StudentName = "Ramit"; ... }); > db.updateListOfKeyValuesDemo.update( ... { "_id": documentFromCollection ._id }, ... { "$set": { "StudentDetails": documentFromCollection.StudentDetails } } ... ); WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
Let us check the list of key values has been updated or not
> db.updateListOfKeyValuesDemo.find().pretty();
This will produce the following output
{ "_id" : ObjectId("5c9b5b759882024390176545"), "StudentDetails" : [ { "StudentName" : "Ramit", "StudentAge" : 23, "StudentCountryName" : "US" }, { "StudentName" : "Ramit", "StudentAge" : 24, "StudentCountryName" : "UK" }, { "StudentName" : "Ramit", "StudentAge" : 22, "StudentCountryName" : "AUS" } ] }
Advertisements