MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Come usare $add all'interno della funzione update() in Mongo?

Questo errore significa che stai tentando di utilizzare un nome di campo che non è valido in MongoDB -- potrebbe essere un nome di campo con un punto (".") o un nome di campo contenente un segno di dollaro.

$set viene utilizzato per sostituire un campo nella sua interezza, quindi quello che hai sopra dice "sostituisci il contenuto del commitCount campo con il documento {$add: ['$commitCount', 1]} ", che è un documento non valido.

Per aumentare o diminuire atomicamente il valore di un campo (supponendo che il valore corrente del campo sia un numero) usa il $inc modificatore:

db.deal.update({dealId: 201}, {$inc: {commitCount: 1}})