MongoDB – Operador de incremento ($inc)

MongoDB proporciona diferentes tipos de operadores de actualización de campo para actualizar los valores de los campos de los documentos y el $incoperador es uno de ellos. Este operador se usa para aumentar los valores de los campos a la cantidad especificada o para aumentar el campo por el valor dado.

También puede usar este operador en documentos incrustados/anidados. Puede usar este operador en métodos como update(), updateOne(), etc. según sus requisitos.

  • Este operador acepta valores positivos y negativos.
  • Si el campo dado no existe, este operador creará un campo y establecerá el valor de ese campo.
  • Este operador generará un error, si usa este operador con un campo de valor nulo.
  • Es una operación atómica en un solo documento.

Sintaxis:

{ $inc: { field1: amount1, field2: amount2, ... } }

En los siguientes ejemplos, estamos trabajando con:

Base de datos: GeeksforGeeks
Colección: contribuyente
Documento: tres documentos que contienen los detalles de los contribuyentes en forma de pares de valor de campo.

Incrementa el valor del campo usando el operador $inc:

En este ejemplo, estamos actualizando los campos del documento de un empleado cuyo nombre es Mohit incrementando el valor del campo de artículos publicados a 10 y disminuyendo el valor del campo de salario a -100.

db.contributor.update({name: "Mohit"}, {$inc: {publisharticles: 10, salary: -100}})

Incremente el valor del campo en la array usando el operador $inc:

En este ejemplo, estamos actualizando el campo del documento de un empleado cuyo nombre es Mohit incrementando el valor de un campo a 10.

db.contributor.update({name: "Priya", "points._id": "g_1"}, {$inc: {"points.$.a":10}})

Incremente el valor del campo en el documento incrustado usando el operador $inc:

En este ejemplo, estamos actualizando el campo del documento de un empleado cuyo nombre es Mohit incrementando el valor de un rango a 2.

db.contributor.update({name: "Amu"}, {$inc: {"personal.rank": 2}})

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *