| (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ı

İki tamsayı değeri arasında bit düzeyinde mantıksal OR işlem 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 ifadeleri. 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.

Dönüş 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şleç, iki ifade arasında bit düzeyinde bir mantıksal OR işlem 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 (çözümlenen bit için) değerine sahipse1, sonuçtaki bitler olarak ayarlanır1. Giriş ifadelerindeki bitlerden hiçbiri değilse 1, sonuçtaki bit olarak 0ayarlanı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 durumda, smallintifadesi bir int'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 ve b_int_value sütunlarında bit düzeyinde ORa_int_value 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 A) şeklindedir 0000 0000 1010 1010. 75 'in ikili gösterimi (b_int_value veya B) şeklindedir 0000 0000 0100 1011. Bu iki değer üzerinde bit düzeyinde OR işlem gerçekleştirildiğinde, ondalık 235 olan ikili sonuç 0000 0000 1110 1011elde edilir.

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