Docs Menu
Docs Home
/ /

$each

$each

El $each El modificador está disponible para su uso con el $addToSet Operador y el $push operador.

Úselo con el operador para agregar múltiples valores a una $addToSet matriz <field> si los valores no existen <field> en.

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

Úselo con el operador para agregar múltiples valores a $push una <field> matriz.

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

El operador$pushpuede usar el modificador$eachcon otros modificadores. Para ver una lista de modificadores disponibles para$push, consulte Modificadores.

A partir de MongoDB 5.0, los operadores de actualización procesan los campos de documentos con nombres basados en cadenas en orden lexicográfico. Los campos con nombres numéricos se procesan en orden numérico. Consulta Comportamiento del operador de actualización para obtener más información.

El siguiente ejemplo añade cada elemento de [ 90, 92, 85 ] al arreglo scores del documento donde el campo name es igual a joe:

db.students.updateOne(
{ name: "joe" },
{ $push: { scores: { $each: [ 90, 92, 85 ] } } }
)

Una colección inventory tiene el siguiente documento:

db.inventory.insertOne (
{ _id: 2, item: "cable", tags: [ "electronics", "supplies" ] }
)

Luego, la siguiente operación utiliza el operador$addToSetcon el modificador$eachpara agregar múltiples elementos a la matriz tags:

db.inventory.updateOne(
{ _id: 2 },
{ $addToSet: { tags: { $each: [ "camera", "electronics", "accessories" ] } } }
)

La operación solo agrega "camera" y "accessories" al arreglo tags. "electronics" ya estaba en el arreglo:

{
_id: 2,
item: "cable",
tags: [ "electronics", "supplies", "camera", "accessories" ]
}

Volver

$pullAll

En esta página