sql >> Databáze >  >> NoSQL >> MongoDB

Jak použít $add uvnitř funkce update() v Mongo?

Tato chyba znamená, že se pokoušíte použít název pole, který je v MongoDB neplatný – mohl by to být buď název pole s tečkou (.""), nebo název pole obsahující znak dolaru.

$set se používá k nahrazení celého pole, takže to, co máte výše, říká "nahradit obsah commitCount pole s dokumentem {$add: ['$commitCount', 1]} “, což je neplatný dokument.

Chcete-li atomicky zvýšit nebo snížit hodnotu pole (za předpokladu, že aktuální hodnotou pole je číslo), použijte $inc modifikátor:

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



  1. Vyberte posledních N záznamů z MongoDB pomocí node.js

  2. Mohu upravit existující index v MongoDB, aniž bych jej zrušil?

  3. Efekt generování mongodb _id na indexování

  4. DB.eval() s ovladačem Mongo Java Driver