Home

Tags

MongoDB, update

2010-07-29 mongodb update

Пример обновления записей, общий вид функции

db.collection.update(query,data,upsert,multi)
queryЗапрос
dataДанные
upsertСоздать документ, если ни один не найден по текущему запросу (true/false)
multiОбновить все документы удовлетворяющие запросу (true/false)


Примеры
db.users.update({ 'login':'user' },
    { '$set':{ 'when':'now' }, '$inc':{ 'count':1 }  })
В результате север у одного элемента с login='user', установит значение when='now', а реквизит count увеличит на 1, в случае если этих реквизитов не существует - он их создаст и count будет равным 1.
Если элементов с login='user' нет, то никаких изменений не будет, если нужно что-б элемент создался если он отсутствует нужно последим параметром указать true
db.users.update({ 'login':'user' },
    { '$set':{ 'when':'now' }, '$inc':{ 'count':1 }  }, true)