$bitsAnySet - Amazon DocumentDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

$bitsAnySet

$bitsAnySetOperator di Amazon DocumentDB digunakan untuk menanyakan dokumen di mana setidaknya satu bit diatur ke 1 dalam bit yang ditentukan di bidang. Operator ini memungkinkan Anda melakukan operasi bitwise pada nilai yang disimpan di bidang, memungkinkan kueri dan analisis data yang efisien dengan karakteristik bitwise.

Parameter

  • field: Nama bidang untuk menerapkan operasi bitwise ke.

  • value: Bitmask numerik yang menentukan bit mana yang harus diperiksa, atau daftar posisi bit yang akan diperiksa. Bitmask numerik dapat berupa biner (0b...), desimal, heksadesimal (0x...), oktal (0o...), atau biner (). BinData Dalam daftar posisi bit, posisi bit yang paling tidak signifikan adalah 0.

Contoh (MongoDB Shell)

Contoh berikut menunjukkan bagaimana menggunakan $bitsAnySet operator untuk menemukan dokumen di mana setidaknya satu bit diatur di flags lapangan.

Buat dokumen sampel

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

Contoh kueri

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

Keluaran

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

Query mengembalikan dokumen di mana setidaknya salah satu bit yang ditentukan dalam bitmask 0b1010 diatur di flags lapangan.

Contoh kode

Untuk melihat contoh kode untuk menggunakan $bitsAnySet perintah, pilih tab untuk bahasa yang ingin Anda gunakan:

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