Aracılığıyla paylaş


| (Bit Düzeyinde VEYA) (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnaliz Platformu Sistemi (PDW)Microsoft Fabric'teki SQL analiz uç noktasıMicrosoft Fabric'teki ambarMicrosoft Fabric'teki SQL veritabanı

Transact-SQL deyimleri içindeki ikili ifadelere çevrildiği şekilde belirtilen iki tamsayı değeri arasında bit düzeyinde mantıksal OR işlemi gerçekleştirir.

Transact-SQL söz dizimi kuralları

Syntax

expression | expression  

Arguments

expression
Tamsayı veri türü kategorisinin veya bit, ikili veya varbinary veri türlerinin geçerli bir ifadesidir. ifadesi , bit düzeyinde işlem için ikili sayı olarak değerlendirilir.

Note

Bit düzeyinde bir işlemde yalnızca bir ifadeikili veya varbinary veri türünde olabilir.

Sonuç Türleri

Giriş değerleri int ise bir int, giriş değerleri smallint ise smallint veya giriş değerleri tinyint ise tinyint döndürür.

Remarks

Bit düzeyinde | işleci, iki ifade arasında bit düzeyinde bir mantıksal OR gerçekleştirir ve her iki ifade için de karşılık gelen her biti alır. Giriş ifadelerindeki bitlerden biri veya her ikisi de (çözümlenen bit için) 1 değerine sahipse, sonuçtaki bitler 1 olarak ayarlanır; giriş ifadelerindeki bitlerden hiçbiri 1 değilse, sonuçtaki bit 0 olarak ayarlanır.

Sol ve sağ ifadelerin farklı tamsayı veri türleri varsa (örneğin, sol ifadesmallint ve sağ ifadeint ise), küçük veri türünün bağımsız değişkeni daha büyük veri türüne dönüştürülür. Bu örnekte smallintifadesiint'e dönüştürülür.

Examples

Aşağıdaki örnek, özgün değerleri göstermek için int veri türlerine sahip bir tablo oluşturur ve tabloyu tek bir satıra yerleştirir.

CREATE TABLE bitwise (  
  a_int_value INT NOT NULL,  
  b_int_value INT NOT NULL);  
GO  
INSERT bitwise VALUES (170, 75);  
GO  

Aşağıdaki sorgu , a_int_value ve b_int_value sütunlarında bit düzeyinde OR gerçekleştirir.

SELECT a_int_value | b_int_value  
FROM bitwise;  
GO  

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

-----------   
235           
  
(1 row(s) affected)  

170'in ikili gösterimi (a_int_value veya Aaşağıda) şeklindedir 0000 0000 1010 1010. 75'in ikili gösterimi (b_int_value veya Başağıda) şeklindedir 0000 0000 0100 1011. Bu iki değerde bit düzeyinde OR işleminin gerçekleştirilmesi, ondalık 235 olan ikili sonucu 0000 0000 1110 1011üretir.

(A | B)  
0000 0000 1010 1010  
0000 0000 0100 1011  
-------------------  
0000 0000 1110 1011  

Ayrıca Bkz.

İşleçler (Transact-SQL)
Bit Düzeyinde İşleçler (Transact-SQL)
|= (Bit Düzeyinde VEYA Atama) (Transact-SQL)
Bileşik İşleçler (Transact-SQL)