

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# \$1push
<a name="push"></a>

El `$push` operador de Amazon DocumentDB se utiliza para añadir un elemento a un campo de matriz de un documento. Este operador resulta especialmente útil cuando necesita añadir nuevos datos a una matriz existente sin sobrescribir toda la matriz.

**Parámetros**
+ `field`: el nombre del campo de matriz al que se debe añadir el nuevo elemento.
+ `value`: El valor que se va a añadir a la matriz.
+ `position`: (opcional) Un modificador que especifica la posición de la matriz en la que se debe añadir el nuevo elemento. Los modificadores admitidos incluyen `$` (añadir al final de la matriz) y `$[]` (añadir al final de la matriz, ignorando cualquier filtro de matriz).

## Ejemplo (MongoDB Shell)
<a name="push-examples"></a>

El siguiente ejemplo muestra cómo utilizar el `$push` operador para añadir nuevos elementos a un campo matricial de un documento.

**Cree documentos de muestra**

```
db.users.insert([
  { _id: 1, name: "John Doe", hobbies: ["reading", "swimming"] },
  { _id: 2, name: "Jane Smith", hobbies: ["gardening", "cooking"] }
])
```

**Ejemplo de consulta**

```
db.users.updateOne(
  { _id: 1 },
  { $push: { hobbies: "hiking" } }
)
```

**Salida**

```
{
  "acknowledged" : true,
  "matchedCount" : 1,
  "modifiedCount" : 1
}
```

Tras ejecutar la actualización, el documento con la `hobbies` matriz se `_id: 1` actualizará a`[&quot;reading&quot;, &quot;swimming&quot;, &quot;hiking&quot;]`.

## Ejemplos de código
<a name="push-code"></a>

Para ver un ejemplo de código para usar el `$push` comando, elija la pestaña correspondiente al idioma que desee usar:

------
#### [ Node.js ]

```
const { MongoClient } = require('mongodb');

async function updateDocument() {
  const client = await MongoClient.connect('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false');
  const db = client.db('test');
  const collection = db.collection('users');

  const result = await collection.updateOne(
    { _id: 1 },
    { $push: { hobbies: "hiking" } }
  );

  console.log(result);
  client.close();
}

updateDocument();
```

------
#### [ Python ]

```
from pymongo import MongoClient

def update_document():
    client = MongoClient('mongodb://<username>:<password>@<cluster-endpoint>:27017/?tls=true&tlsCAFile=global-bundle.pem&replicaSet=rs0&readPreference=secondaryPreferred&retryWrites=false')
    db = client['test']
    collection = db['users']

    result = collection.update_one(
        {'_id': 1},
        {'$push': {'hobbies': 'hiking'}}
    )

    print(result.raw_result)
    client.close()

update_document()
```

------