

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.

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

El `$bit` operador de Amazon DocumentDB le permite realizar operaciones bit a bit en los bits de un campo determinado. Esto puede resultar útil para tareas como configurar, borrar o comprobar el estado de los bits individuales de un número.

**Parámetros**
+ `field`: El campo en el que se realizan operaciones bit a bit.
+ `and`: un valor entero que se utiliza para realizar una operación AND bit a bit en el campo.
+ `or`: un valor entero que se utiliza para realizar una operación OR bit a bit en el campo.
+ `xor`: un valor entero que se utiliza para realizar una operación XOR bit a bit en el campo.

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

El siguiente ejemplo muestra cómo utilizar el `$bit` operador para realizar operaciones bit a bit en un campo numérico.

**Cree documentos de muestra**

```
db.numbers.insert([
  { "_id": 1, "number": 5 },
  { "_id": 2, "number": 12 }
])
```

**Ejemplo de consulta**

```
db.numbers.update(
  { "_id": 1 },
  { "$bit": { "number": { "and": 3 } } }
)
```

**Salida**

```
{
  "_id": 1,
  "number": 1
}
```

En este ejemplo, el `$bit` operador se utiliza para realizar una operación AND bit a bit en el campo «numérico» del documento con un valor `_id` de 1. El resultado es que el valor del campo «numérico» se establece en 1, que es el resultado de la operación AND bit a bit entre el valor original de 5 y el valor 3.

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

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

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

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

async function main() {
  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('numbers');

  await collection.updateOne(
    { "_id": 1 },
    { "$bit": { "number": { "and": 3 } } }
  );

  const result = await collection.findOne({ "_id": 1 });
  console.log(result);

  await client.close();
}

main();
```

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

```
from pymongo import MongoClient

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['numbers']

collection.update_one(
    {"_id": 1},
    {"$bit": {"number": {"and": 3}}}
)

result = collection.find_one({"_id": 1})
print(result)

client.close()
```

------