Sdílet prostřednictvím


Bitové operátory (Transact-SQL)

Platí pro:SQL ServerAzure SQL DatabaseSpravovaná instance Azure SQLAzure Synapse AnalyticsAnalytics Platform System (PDW)Koncový bod analýzy SQL v Microsoft FabricSklad v Microsoft FabricDatabáze SQL v Microsoft Fabric

Bitové operátory provádějí bitovou manipulaci mezi dvěma výrazy libovolného datového typu celého čísla.

Bitové operátory převádějí dvě celočíselné hodnoty na binární bity, provádějí ANDORoperace , nebo NOT operace na každém bitu a vytvářejí výsledek. Potom převede výsledek na celé číslo.

Například celé číslo 170 se převede na binární 1010 1010.

Celé číslo 75 se převede na binární 0100 1011.

Operator Bitová matematika
AND

Pokud jsou bity na libovolné pozici oba 1, výsledek je 1.
1010 1010 = 170
0100 1011 = 75
-----------------
0000 1010 = 10
OR

Pokud je 1některý bit na libovolné pozici , výsledek je 1.
1010 1010 = 170
0100 1011 = 75
-----------------
1110 1011 = 235
NOT

Obrátí bitovou hodnotu na každé pozici bitu.
1010 1010 = 170
-----------------
0101 0101 = 85

Následující články obsahují další informace o bitové operátory dostupné v databázovém stroji:

V SQL Serveru 2022 (16.x) byly zavedeny následující bitové operátory:

Operandy pro bitové operátory mohou být libovolným datovým typem celočíselného nebo binárního řetězcového datového typu (s výjimkou datového typu obrázku ), s tím rozdílem, že oba operandy nemohou být žádným z datových typů binárního řetězce kategorie. Následující tabulka uvádí podporované datové typy operandu.

Levý operand Pravý operand
binary int, smallint nebo tinyint
bit int, smallint, tinyint nebo bit
bigint bigint, int, smallint, tinyint, binary nebo varbinary
int int, smallint, tinyint, binary nebo varbinary
smallint int, smallint, tinyint, binary nebo varbinary
tinyint int, smallint, tinyint, binary nebo varbinary
varbinary int, smallint nebo tinyint

Viz také