В MongoDB для обновления документов в коллекции используется оператор $set
. Он позволяет обновлять только определенные поля в документе без изменения остальной части информации.
Для обращения к полю, которое нужно обновить, необходимо указать его имя внутри оператора $set
. Пример использования оператора $set
в запросе обновления выглядит следующим образом:
db.collection.update( { /* условие для поиска документа */ }, { $set: { /* поле, которое нужно обновить */ : /* новое значение */ } } )
Здесь db.collection
- название вашей коллекции, { /* условие для поиска документа */ }
- условие для поиска документа, которое определяет, какой документ будет обновлен, { $set: { /* поле, которое нужно обновить */ : /* новое значение */ } }
- оператор $set
с указанием поля, которое нужно обновить, и новым значением этого поля.
Например, если у нас есть коллекция "users" с документом вида:
{ "_id" : ObjectId("5ec15b53ae1c9d4ac8cd8897"), "name": "John", "age": 30 }
Мы хотим обновить поле "age" на новое значение, скажем 35, то запрос обновления будет выглядеть так:
db.users.update( { "_id" : ObjectId("5ec15b53ae1c9d4ac8cd8897") }, { $set: { "age" : 35 } } )
После выполнения этого запроса документ в коллекции "users" будет иметь следующий вид:
{ "_id" : ObjectId("5ec15b53ae1c9d4ac8cd8897"), "name": "John", "age": 35 }
Важно отметить, что в запросе обновления необходимо указать уникальный идентификатор документа для его нахождения в коллекции. Это может быть поле "_id" или любое другое поле, по которому можно однозначно идентифицировать документ.