

 Amazon Redshift tidak akan lagi mendukung pembuatan UDF Python baru mulai Patch 198. UDF Python yang ada akan terus berfungsi hingga 30 Juni 2026. Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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

# Fungsi BIT\_AND
<a name="r_BIT_AND"></a>

Fungsi BIT\_AND menjalankan operasi AND bit-wise pada semua nilai dalam kolom atau ekspresi integer tunggal. Fungsi ini menggabungkan setiap bit dari setiap nilai biner yang sesuai dengan setiap nilai integer dalam ekspresi.

Fungsi BIT\_AND mengembalikan hasil dari `0` jika tidak ada bit diatur ke 1 di semua nilai. Jika satu atau lebih bit diatur ke 1 di semua nilai, fungsi mengembalikan nilai integer. Integer ini adalah angka yang sesuai dengan nilai biner untuk bit-bit tersebut.

Misalnya, tabel berisi empat nilai integer dalam kolom: 3, 7, 10, dan 22. Bilangan bulat ini direpresentasikan dalam bentuk biner sebagai berikut:


| Bilangan Bulat | Nilai biner | 
| --- | --- | 
| 3 |  11 | 
| 7 | 111 | 
| 10 | 1010 | 
| 22 | 10110 | 

Operasi BIT\_AND pada kumpulan data ini menemukan bahwa semua bit disetel ke posisi kedua hingga `1` terakhir saja. Hasilnya adalah nilai biner`00000010`, yang mewakili nilai `2` integer. Oleh karena itu, fungsi BIT\_AND kembali. `2`

## Sintaksis
<a name="r_BIT_AND-synopsis"></a>

```
BIT_AND ( [DISTINCT | ALL] expression )
```

## Argumen
<a name="r_BIT_AND-arguments"></a>

 *ekspresi*   
Kolom target atau ekspresi tempat fungsi beroperasi. Ekspresi ini harus memiliki tipe data INT, INT2, atau INT8. Fungsi mengembalikan tipe data INT, INT2, atau INT8 yang setara.

BERBEDA \| SEMUA  
Dengan argumen DISTINCT, fungsi menghilangkan semua nilai duplikat untuk ekspresi yang ditentukan sebelum menghitung hasilnya. Dengan argumen ALL, fungsi mempertahankan semua nilai duplikat. ALL adalah default. Untuk informasi selengkapnya, lihat [Dukungan DISTINCT untuk agregasi bit-wise](c_bitwise_aggregate_functions.md#distinct-support-for-bit-wise-aggregations).

## Contoh
<a name="r_bit_end_example"></a>

Mengingat bahwa informasi bisnis yang bermakna disimpan dalam kolom integer, Anda dapat menggunakan fungsi bit-wise untuk mengekstrak dan mengumpulkan informasi tersebut. Kueri berikut menerapkan fungsi BIT\_AND ke kolom LIKES dalam tabel yang disebut USERLIKES dan mengelompokkan hasil menurut kolom CITY. 

```
select city, bit_and(likes) from userlikes group by city 
order by city;
city          | bit_and
--------------+---------
Los Angeles   |       0
Sacramento    |       0
San Francisco |       0
San Jose      |      64
Santa Barbara |     192
(5 rows)
```

Anda dapat menafsirkan hasil ini sebagai berikut:
+ Nilai integer `192` untuk Santa Barbara diterjemahkan ke nilai biner. `11000000` Dengan kata lain, semua pengguna di kota ini menyukai olahraga dan teater, tetapi tidak semua pengguna menyukai jenis acara lainnya.
+ Integer `64` diterjemahkan menjadi. `01000000` Jadi, bagi pengguna di San Jose, satu-satunya jenis acara yang mereka sukai adalah teater.
+ Nilai `0` untuk tiga kota lainnya menunjukkan bahwa tidak ada “suka” yang dibagikan oleh semua pengguna di kota-kota tersebut.