MongoDB – $cada modificador

MongoDB proporciona diferentes tipos de operadores de actualización de array para actualizar los valores de los campos de array en los documentos y el modificador $each es uno de ellos. Este modificador se usa para agregar múltiples valores al campo de la array. Puede usar este modificador con los operadores $addToSety : $push

$eachmodificador con $addToSetoperador:
si usa $each modificador con $addToSetoperador, agrega múltiples valores a un campo de array si el valor especificado no está presente en el campo de array.
Sintaxis:

{ $addToSet: { <field>: { $each: [ <value1>, <value2> ... ] } } }

$each modificador con $pushoperador:
si usa $each modificador con $push operator, entonces agrega múltiples valores a un campo de array. El operador $push puede usar $cada modificador con otros modificadores (como, $slice, $sorty $position).
Sintaxis:

{ $push: { <field>: { $each: [ <value1>, <value2> ... ] } } }

En los siguientes ejemplos, estamos trabajando con:

Base de datos: GeeksforGeeks
Colección: colaborador
Documento: dos documentos que contienen los detalles del colaborador en forma de pares de valor de campo.

Usando $each modificador con $addToSet operador:

En este ejemplo, estamos actualizando el documento de un colaborador cuyo nombre es Sumit usando un $eachmodificador con $addToSet operador. Aquí, esta operación solo agrega «Ruby» y «C» en el campo de idioma y no agrega «Java», «C#» porque ya existen en el campo de idioma.

db.contributor.update({name: "Sumit"}, 
... {$addToSet: {language: {$each: ["Ruby", "Java", "C", "C#"]}}})

Usando $eachmodificador con $push operador:

En este ejemplo, estamos actualizando el documento de un colaborador cuyo nombre es Rohit usando un $eachmodificador con $pushoperador. Aquí, esta operación agrega el valor especificado, es decir, [“Java”, “C”, “Python”] al final del campo de idioma. No elimina los valores duplicados.

db.contributor.update({name: "Rohit"}, 
... {$push: {language: {$each: ["Java", "C", "Python"]}}})

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 *