& (Bitwise AND) (Transact-SQL)
Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System (PDW) SQL di Microsoft Fabric Warehouse di Microsoft Fabric
Melakukan operasi logika per bit AND di antara dua nilai bilangan bulat.
Sintaks
expression & expression
Argumen
expression
Adalah ekspresi valid dari salah satu jenis data dari kategori jenis data bilangan bulat, atau bit, atau jenis data biner atau varbinary. ekspresi diperlakukan sebagai angka biner untuk operasi bitwise.
Catatan
Dalam operasi bitwise, hanya satu ekspresi yang dapat berupa jenis data biner atau varbinary .
Jenis Hasil
int jika nilai input adalah int.
smallint jika nilai input kecil.
tinyint jika nilai inputnya kecil atau bit.
Keterangan
Operator & bitwise melakukan logis bitwise DAN di antara kedua ekspresi, mengambil setiap bit yang sesuai untuk kedua ekspresi. Bit dalam hasil diatur ke 1 jika dan hanya jika kedua bit (untuk bit saat ini yang diselesaikan) dalam ekspresi input memiliki nilai 1; jika tidak, bit dalam hasil diatur ke 0.
Jika ekspresi kiri dan kanan memiliki jenis data bilangan bulat yang berbeda (misalnya, ekspresi kiri berwarna kecil dan ekspresi kanan adalah int), argumen jenis data yang lebih kecil dikonversi ke jenis data yang lebih besar. Dalam hal ini, ekspresi smallint dikonversi ke int.
Contoh
Contoh berikut membuat tabel menggunakan tipe data int untuk menyimpan nilai dan menyisipkan dua nilai ke dalam satu baris.
CREATE TABLE bitwise (
a_int_value INT NOT NULL,
b_int_value INT NOT NULL);
GO
INSERT bitwise VALUES (170, 75);
GO
Kueri ini melakukan bitwise AND di antara a_int_value
kolom dan b_int_value
.
SELECT a_int_value & b_int_value
FROM bitwise;
GO
Berikut adalah hasilnya:
-----------
10
(1 row(s) affected)
Representasi biner 170 (a_int_value
atau A
) adalah 0000 0000 1010 1010
. Representasi biner 75 (b_int_value
atau B
) adalah 0000 0000 0100 1011
. Melakukan operasi BITWISE AND pada kedua nilai ini menghasilkan hasil 0000 0000 0000 1010
biner , yaitu desimal 10.
(A & B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 0000 1010
Lihat Juga
Ekspresi (Transact-SQL)
Operator (Transact-SQL)
Operator Bitwise (Transact-SQL)
&= (Bitwise AND Assignment) (Transact-SQL)
Operator Majemuk (Transact-SQL)