$bitsAnyClear - Amazon DocumentDB

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

$bitsAnyClear

Der $bitsAnyClear Operator in Amazon DocumentDB wird verwendet, um die Dokumente abzugleichen, bei denen eines der angegebenen Bits in einem Feld gelöscht (auf 0 gesetzt) wurde. Dies kann nützlich sein, um bitweise Operationen an Feldwerten durchzuführen, die in Dokumenten gespeichert sind.

Parameter

  • field: Das zu prüfende Feld.

  • value: Die numerische Bitmaske, die angibt, welche Bits geprüft werden sollen, oder eine Liste von Bitpositionen, die überprüft werden sollen. Eine numerische Bitmaske kann binär (0b...), dezimal, hexadezimal (0x...), oktal (0o...) oder binär () sein. BinData In einer Liste von Bitpositionen ist die Position des niedrigstwertigen Bits 0.

Beispiel (MongoDB Shell)

Das folgende Beispiel zeigt, wie der $bitsAnyClear Operator verwendet wird, um zu überprüfen, ob ein Bit im status Feld der items Sammlung leer ist.

Erstellen Sie Beispieldokumente

db.items.insertMany([ { "_id": 1, "status": 7 }, { "_id": 2, "status": 15 }, { "_id": 3, "status": 31 } ]);

Beispiel für eine Abfrage

db.items.find({ "status": { $bitsAnyClear: 8 } })

Ausgabe

{ "_id" : 1, "status" : 7 }

In diesem Beispiel sucht die Abfrage nach Dokumenten, in denen das status Feld Leerzeichen (0) in der Bitmaske 8 (binär1000) enthält. Das Dokument mit den status Werten 7 (binär111) entspricht der Abfrage, da die angegebene Bitmaske mindestens ein Bit Clear enthält. Das passende Clear-Bit ist das viertniedrigstwertige Bit.

Codebeispiele

Um ein Codebeispiel für die Verwendung des $bitsAnyClear Befehls anzuzeigen, wählen Sie die Registerkarte für die Sprache, die Sie verwenden möchten:

Node.js
const { MongoClient } = require('mongodb'); async function example() { 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('items'); const result = await collection.find({ "status": { $bitsAnyClear: 8 } }).toArray(); console.log(result); await client.close(); } example();
Python
from pymongo import MongoClient def example(): 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.items result = list(collection.find({ "status": { "$bitsAnyClear": 8 } })) print(result) client.close() example()