Оболочка mongodb: обновлять документ, только если он существует
Если я не ошибаюсь $set
в следующем добавим поле, если оно не существует.
db.coll.update({profession:"devs"}, { $set : { daysSpent : 30 } }, {multi:true});
это установит daysSpent
30 для всех документов с профессиями "разработчиков", независимо от того, есть ли у них это поле.
1 ответ
Решение
Вам нужно использовать $exists
оператор, который будет соответствовать документам, которые содержат поле daysSpent
db.coll.update(
{ "profession": "devs", "daysSpent": { "$exists": true },
{ "$set" : { "daysSpent" : 30 } },
{ multi: true }
)