sql >> Databasteknik >  >> NoSQL >> MongoDB

Hur uppdaterar jag MongoDB-dokumentfält endast om de inte finns?

Du kan lägga till en fråga i ditt uppdateringsutdrag:

db.foo.update({'title.de': {$exists : false}}, {$set: {'title.de': ''}})

Uppdatera

För din modifierade fråga ser min lösning ut så här - skulle det fungera för dig? (Om inte, varför?)

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})


  1. MongoDB Ruby Driver 2.5.x problem med skiftlägeskänslighet med värdnamn på replikuppsättningar

  2. MongoDB-prestanda - att ha flera databaser

  3. Fråga inbäddade objekt i Mongoid/rails 3 (Lägre än, Min-operatorer och sortering)

  4. Hur man korrekt itererar genom en stor json-fil