Aggregate
DuckDB
BIT_AND
Melakukan operasi bitwise AND pada semua nilai dalam grup. Hasilnya adalah bit yang bernilai 1 hanya jika SEMUA nilai memiliki bit tersebut bernilai 1.
Tipe hasil:
Sama dengan tipe input (INTEGER/BIGINT)Diperbarui: 6 Jan 2026Syntax
SQL
BIT_AND(expression)Parameter
expressionINTEGER/BIGINTwajib
Kolom atau ekspresi integer untuk operasi bitwise AND
Contoh Penggunaan
Mengecek Permission yang Dimiliki Semua User
SQL
1 -- Permission flags: 1=read, 2=write, 4=delete, 8=admin 2 SELECT 3 role_name, 4 BIT_AND(permissions) as common_permissions 5 FROM users 6 GROUP BY role_name;
Mencari permission bit yang dimiliki SEMUA user dalam setiap role.
Hasil
| role_name | common_permissions |
|---|---|
| admin | 15 (semua permission) |
| editor | 3 (read + write) |
| viewer | 1 (read only) |
Analisis Feature Flags
SQL
1 SELECT 2 product_line, 3 BIT_AND(feature_flags) as common_features, 4 COUNT(*) as product_count 5 FROM products 6 GROUP BY product_line;
Menemukan fitur yang ada di SEMUA produk dalam satu lini.
Hasil
| product_line | common_features | product_count |
|---|---|---|
| Premium | 7 | 15 |
| Basic | 1 | 45 |
BIT_AND dengan Binary Display
SQL
1 SELECT 2 category, 3 BIT_AND(status_flags) as common_flags, 4 TO_BASE(BIT_AND(status_flags), 2) as binary_repr 5 FROM items 6 GROUP BY category;
Menampilkan hasil dalam format binary untuk analisis bit lebih mudah.
Hasil
| category | common_flags | binary_repr |
|---|---|---|
| A | 5 | 101 |
| B | 3 | 11 |