Aracılığıyla paylaş


| (Bit Düzeyinde VEYA)

✅ Azure Stream Analytics ✅ Fabric Olay Akışı

İki tamsayı değeri arasında bit düzeyinde mantıksal OR işlemi gerçekleştirir ve her iki ifadeden karşılık gelen her biti değerlendirir.

Sözdizimi

expression | expression

Tartışmalar

ifade

Bit veya bigint veri türlerinin geçerli bir ifadesidir. İfade, bit düzeyinde işlem için ikili sayı olarak değerlendirilir.

Dönüş Türleri

her iki giriş değeri de bit ise bit.

giriş değerlerinden biri veya her ikisi de bigint ise bigint.

Açıklamalar

| bit düzeyinde işleç, 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; aksi takdirde, sonuçtaki bit 0 olarak ayarlanır.

Çizim için, 170'in ikili gösterimi 0000 0000 1010 1010'dur. 75'in ikili gösterimi 0000 0000 0100 1011'dir. Bu iki değer üzerinde bit düzeyinde AND işleminin gerçekleştirilmesi, ondalık 235 olan 0000 0000 1110 1011 ikili sonucunu üretir.

(170 | 75)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 1110 1011

BIR FLOAT değerini BIGINT'e atamanın ve buna bit düzeyinde bir işleç uygulamanın genellikle BIT'e atama ve aynı işleci uygulama ile aynı sonucu döndürmeyeceği belirtilmelidir:

  • İlk seçenek: 170 | 75.0 => 170 | 75 = 235
  • İkinci seçenek: 170 | 75.0 => 170 | 1 = 171

Bit dönüştürme kuralları için bkz. Veri Türlerine Genel Bakış .

Örnekler

Ortak bir giriş veri kümesiyle:

WITH MyCTE AS (
	SELECT
		CAST(0 AS BIT) AS bit0,
		CAST(1 AS BIT) AS bit1,
		CAST(NULL AS BIT) AS bitN,
		CAST(0 AS BIGINT) AS bigint0,
		CAST(1 AS BIGINT) AS bigint1,
		CAST(NULL AS BIGINT) AS bigintN
	FROM input
)

bit ifadelerine işleci uygulama:

SELECT
	bit0,
	bit1,
	bitN,
	bit0 | bit0 AS OR00,
	bit0 | bit1 AS OR01,
	bit1 | bit0 AS OR10,
	bit1 | bit1 AS OR11,
	bitN | bit0 AS ORnull
INTO bitOR
FROM MyCTE

İadeler

bit0 bit1 bitN OR00 OR01 OR10 OR11 ORnull
yanlış doğru null yanlış doğru doğru doğru null

bigint ifadelerine işleci uygulama:

SELECT
	bigint0,
	bigint1,
	bigintN,
	bigint0 | bigint0 AS OR00,
	bigint0 | bigint1 AS OR01,
	bigint1 | bigint0 AS OR10,
	bigint1 | bigint1 AS OR11,
	bigintN | bigint1 AS ORnull,
	170 | 75 AS ORvalues
INTO bigintOR
FROM MyCTE

İadeler

bigint0 bigint1 bigintN OR00 OR01 OR10 OR11 ORnull ORvalues
0 1 null 0 1 1 1 null 235

Çıkış türleri doğrulanıyor:

SELECT
	GetType(bit0 | bit0) AS ORtype_bit,
	GetType(bigint0 | bigint0) AS ORtype_bigint,
	GetType(bit0 | bigint0) AS ORtype_mixed
INTO typesOR
FROM MyCTE

İadeler

ORtype_bit ORtype_bigint ORtype_mixed
parça bigint bigint

Ayrıca Bkz.