Udostępnij za pomocą


Operatory bitowe (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punkt końcowy analizy SQL w usłudze Microsoft FabricHurtownia danych w usłudze Microsoft FabricBaza danych SQL w usłudze Microsoft Fabric

Operatory bitowe wykonują manipulowanie bitami między dwoma wyrażeniami dowolnego typu danych kategorii typu danych całkowitych.

Operatory bitowe konwertują dwie wartości całkowite na bity binarne, wykonują ANDoperację , ORlub NOT na każdym bitzie, generując wynik. Następnie konwertuje wynik na liczbę całkowitą.

Na przykład liczba całkowita 170 konwertuje na wartość binarną 1010 1010.

Liczba całkowita 75 jest konwertowana na wartość binarną 0100 1011.

Operator Matematyka bitowa
AND

Jeśli bity w dowolnej pozycji to , 1wynik to 1.
1010 1010 = 170
0100 1011 = 75
-----------------
0000 1010 = 10
OR

Jeśli dowolny bit w dowolnej pozycji to 1, wynikiem jest 1.
1010 1010 = 170
0100 1011 = 75
-----------------
1110 1011 = 235
NOT

Odwraca wartość bitu w każdej pozycji bitowej.
1010 1010 = 170
-----------------
0101 0101 = 85

Poniższe artykuły zawierają więcej informacji na temat operatorów bitowych dostępnych w aucie bazy danych:

W programie SQL Server 2022 wprowadzono następujące operatory bitowe (16.x):

Operandy dla operatorów bitowych mogą być jednym z typów danych kategorii typów danych liczb całkowitych lub binarnych ciągów (z wyjątkiem typu danych obrazu ), z wyjątkiem tego, że oba operandy nie mogą być żadnymi typami danych typu danych ciągu binarnego. W poniższej tabeli przedstawiono obsługiwane typy danych operandu.

Lewy operand Prawy operand
binary int, smallint lub tinyint
bit int, smallint, tinyint lub bit
bigint bigint, int, smallint, tinyint, binary lub varbinary
int int, smallint, tinyint, binary lub varbinary
smallint int, smallint, tinyint, binary lub varbinary
tinyint int, smallint, tinyint, binary lub varbinary
varbinary int, smallint lub tinyint

Zobacz także