In the shell, my query is:
db.checkin_4e95ae0926abe9ad28000001.update({location_city:"New York"}, {location_country: "FUDGE!"});
However, it doesn't actually update my records. It doesn't error either. When I do a db.checkin_4e95ae0926abe9ad28000001.find({location_city:"New York"});
after running this, I get all my results but the location_country
has not changed:
{ "_id": ObjectId("4e970209a0290b70660009e9"), "addedOn": ISODate("2011-10-13T15:21:45.772Z"), "location_address1": "", "location_city": "New York", "location_country": "United States", "location_latLong": { "xLon": -74.007124, "yLat": 40.71455 }, "location_source": "socialprofile", "location_state": "New York", "location_zip": "" }
To update a single field or specific fields just use the $set operator. This will update a specific field of "citiName" by value "Jakarta Pusat" that defined by $set operator.
MongoDB's update() and save() methods are used to update document into a collection. The update() method updates the values in the existing document while the save() method replaces the existing document with the document passed in save() method.
The update() method updates the values in the existing document in the collections of MongoDB. When you update your document the value of the _id field remains unchanged. By default, the db.
You can update a single document using the collection. updateOne() method. The updateOne() method accepts a filter document and an update document. If the query matches documents in the collection, the method applies the updates from the update document to fields and values of them.
This is because in second parameter of update function you need to use $set operator to update location_country
as in example below:
db.checkin_4e95ae0926abe9ad28000001.update( {location_city:"New York"}, //find criteria // this row contains fix with $set oper { $set : { location_country: "FUDGE!"}});
Here you can find a list of available update operators.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With