$bitsAnySet - Amazon DocumentDB

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.

$bitsAnySet

El $bitsAnySet operador de Amazon DocumentDB se utiliza para consultar documentos en los que al menos un bit está establecido en 1 en los bits especificados de un campo. Este operador le permite realizar operaciones bit a bit en los valores almacenados en los campos, lo que permite realizar consultas y análisis eficientes de datos con características bit a bit.

Parámetros

  • field: el nombre del campo al que se va a aplicar la operación bit a bit.

  • value: la máscara de bits numérica que especifica los bits que se deben comprobar o una lista de las posiciones de los bits que se van a comprobar. Una máscara de bits numérica puede tener una forma binaria (0b...), decimal, hexadecimal (0x...), octal (0o...) o binaria (). BinData En una lista de posiciones de bits, la posición del bit menos significativo es 0.

Ejemplo (MongoDB Shell)

El siguiente ejemplo muestra cómo utilizar el $bitsAnySet operador para buscar documentos en los que haya al menos un bit establecido en el flags campo.

Cree documentos de muestra

db.collection.insertMany([ { _id: 1, flags: 0b1010 }, { _id: 2, flags: 0b1100 }, { _id: 3, flags: 0b0011 }, { _id: 4, flags: 0b0100 } ]);

Ejemplo de consulta

db.collection.find({ flags: { $bitsAnySet: 0b1010 } })

Salida

{ "_id" : 1, "flags" : 10 } { "_id" : 2, "flags" : 12 } { "_id" : 3, "flags" : 3 }

La consulta devuelve los documentos en los que al menos uno de los bits especificados en la máscara de bits 0b1010 está establecido en el flags campo.

Ejemplos de código

Para ver un ejemplo de código para usar el $bitsAnySet 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('collection'); const result = await collection.find({ flags: { $bitsAnySet: 0b1010 } }).toArray(); 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['collection'] result = list(collection.find({ 'flags': { '$bitsAnySet': 0b1010 } })) print(result) client.close()