Aracılığıyla paylaş


&(Bitwise ve) (Transact-sql)

Bitsel mantıksal and işlemi iki tamsayı değerler arasında gerçekleştirir.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

expression & expression

Bağımsız değişkenler

  • expression
    Herhangi bir geçerli ifade herhangi bir tamsayı veri türü kategori, veri türleri veya bit, ya da binaryya varbinaryveri türlerini. expressionbitwise işlem için ikili sayı olarak değerlendirilir.

    [!NOT]

    Bitwise işlem, tek bir expressionya da-ebilmek var olmak binaryya varbinaryveri türü.

Sonuç türleri

intgiriş değerleri ise int.

smallintgiriş değerleri ise smallint.

tinyintgiriş değerleri ise tinyintya bit.

Açıklamalar

**&**Bitsel işleci gerçekleştirir bit düzeyinde mantıksal ve karşılık gelen her iki ifadeler için biraz alarak iki ifadeler arasında. Sonuç biti 1 ise ve yalnızca (geçerli bit çözüldü) için her iki bit giriş ayarlanır ifadeler var. değeri 1; Aksi takdirde sonuç bit 0 olarak ayarlanır.

Sağ ve sol ifadeleri farklı tamsayı veri türleri varsa (örneğin, sol expressionolan smallintve sağ expressionolduğunu int), bağımsız küçük veri türünü daha büyük veri türü dönüştürülür. Bu durumda, smallint expressiondönüştürülür bir int.

Örnekler

Aşağıdaki örnek kullanarak bir tablo oluşturur intveri değerlerini depolamak için yazın ve iki değerlerini bir satır ekler.

USE tempdb;
GO
IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES 
      WHERE TABLE_NAME = 'bitwise')
   DROP TABLE bitwise;
GO
CREATE TABLE bitwise
( 
a_int_value int NOT NULL,
b_int_value int NOT NULL
);
GO
INSERT bitwise VALUES (170, 75);
GO

USE tempdb;
GO
IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES 
      WHERE TABLE_NAME = 'bitwise')
   DROP TABLE bitwise;
GO
CREATE TABLE bitwise
( 
a_int_value int NOT NULL,
b_int_value int NOT NULL
);
GO
INSERT bitwise VALUES (170, 75);
GO

Bu sorgu bitwise and arasında gerçekleştirir a_int_valueve b_int_valuesütun.

USE tempdb;
GO
SELECT a_int_value & b_int_value
FROM bitwise;
GO

USE tempdb;
GO
SELECT a_int_value & b_int_value
FROM bitwise;
GO

Sonuç kümesi aşağıdadır:

----------- 
10          

(1 row(s) affected)

----------- 
10          

(1 row(s) affected)

170 İkili gösterimini ( a_int_value ya A) ise 0000 0000 1010 1010. 75 İkili gösterimini ( b_int_value ya B) ise 0000 0000 0100 1011. Bu iki değer üzerinde bitwise and işlemi gerçekleştirme ikili sonuç üreten 0000 0000 0000 1010, ondalık 10 olan.

(A & B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 0000 1010

(A & B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 0000 1010

Ayrıca bkz.

Başvuru

Ifadeler (Transact-sql)

İşleçler (Transact-sql)

Bitsel işleçler (Transact-sql)

&= (Bitwise eşittir) (Transact-sql)

Bileşik işleçler (Transact-sql)