mongodb updateOne code example
Example 1: mongodb update field inside array
Consider the following document in the students collection whose grades element value is an array of embedded documents:
{
_id: 4,
grades: [
{ grade: 80, mean: 75, std: 8 },
{ grade: 85, mean: 90, std: 5 },
{ grade: 85, mean: 85, std: 8 }
]
}
Use the positional $ operator to update the std field of the first array element that matches the grade equal to 85 condition:
IMPORTANT
---------
You must include the array field as part of the query document.
db.students.updateOne(
{ _id: 4, "grades.grade": 85 },
{ $set: { "grades.$.std" : 6 } }
)
After the operation, the document has the following updated values:
{
"_id" : 4,
"grades" : [
{ "grade" : 80, "mean" : 75, "std" : 8 },
{ "grade" : 85, "mean" : 90, "std" : 6 },
{ "grade" : 85, "mean" : 85, "std" : 8 }
]
}
Example 2: mongodb updateone
db.<collection>.updateOne({ id : 8400704 },{ $set: { name : "John" } })
Example 3: mongodb update
db.collectionName.update({"aField":"vale1"},{$set:{"anotherField":"value2"}})
-search for documentations for more examples than search
-aField is used to find the documents
-anotherField is the field that will be updated
-You can also use the below:
-- updateOne
-- findOneAndUpdate
Example 4: updateone mongodb examples
const query = { "name": "football" };
const update = {
"$push": {
"reviews": {
"username": "tombradyfan",
"comment": "I love football!!!"
}
}
};
const options = { "upsert": false };
itemsCollection.updateOne(query, update, options)
.then(result => {
const { matchedCount, modifiedCount } = result;
if(matchedCount && modifiedCount) {
console.log(`Successfully added a new review.`)
}
})
.catch(err => console.error(`Failed to add review: ${err}`))