MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como atualizo os campos do documento MongoDB somente se eles não existirem?


Você pode adicionar uma consulta à sua declaração de atualização:
db.foo.update({'title.de': {$exists : false}}, {$set: {'title.de': ''}})

Atualizar


Para sua pergunta modificada, minha solução se parece com isso - isso funcionaria para você? (Se não, por quê?)
db.foo.update({site_id: 'xxx', 'title.de': {$exists : false}}, {$set: {'title.de': ''}, {multi: true})
db.foo.update({site_id: 'xxx', 'content.de': {$exists : false}}, {$set: {'content.de': ''}}, {multi: true})