$bit - Amazon DocumentDB

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

$bit

L'$bitopérateur d'Amazon DocumentDB vous permet d'effectuer des opérations binaires sur les bits d'un champ donné. Cela peut être utile pour des tâches telles que le réglage, l'effacement ou la vérification de l'état de bits individuels au sein d'un nombre.

Paramètres

  • field: champ sur lequel effectuer des opérations au niveau du bit.

  • and: valeur entière utilisée pour effectuer une opération ET au niveau du bit sur le terrain.

  • or: valeur entière utilisée pour effectuer une opération OR au niveau du bit sur le terrain.

  • xor: valeur entière utilisée pour effectuer une opération XOR bit à bit sur le terrain.

Exemple (MongoDB Shell)

L'exemple suivant montre comment utiliser l'$bitopérateur pour effectuer des opérations au niveau du bit sur un champ numérique.

Création d'exemples de documents

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

Exemple de requête

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

Sortie

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

Dans cet exemple, l'$bitopérateur est utilisé pour effectuer une opération AND bit à bit sur le champ « numéro » du document avec le _id chiffre 1. Le résultat est que la valeur du champ « numéro » est définie sur 1, résultat de l'opération AND bit à bit entre la valeur initiale de 5 et la valeur 3.

Exemples de code

Pour afficher un exemple de code d'utilisation de la $bit commande, choisissez l'onglet correspondant à la langue que vous souhaitez utiliser :

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()