Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применимо к:SQL Server
База данных Azure SQL
Управляемый экземпляр Azure SQL
Azure Synapse Analytics
Система платформы аналитики (PDW)
Конечная точка SQL аналитики в Microsoft Fabric
Хранилище в Microsoft Fabric
База данных SQL в Microsoft Fabric
Выполняет побитовую логическую монопольную OR операцию между двумя целыми значениями.
Соглашения о синтаксисе Transact-SQL
Syntax
expression ^ expression
Arguments
expression
Любое допустимое выражение любого из типов данных категории целочисленного типа данных, бита или двоичного или varbinary типа данных. expression трактуется как двоичное числовое значение для выполнения побитовой операции.
Note
В побитовой операции только одно выражение expression может иметь тип binary или varbinary.
Типы возвращаемых данных
int, если входные значения имеют тип int.
smallint, если входные значения имеют тип smallint.
tinyint, если входные значения имеют тип tinyint.
Remarks
Побитовый ^ оператор выполняет побитовую логическую эксклюзивную OR между двумя выражениями, принимая каждый соответствующий бит для обоих выражений. Биты в результирующем выражении имеют 1 значение, если (но не оба) бита (для текущего бита, разрешаемого) в входных выражениях имеет значение 1. Если оба бита имеют значение 0 или оба бита 1, то бит в результате очищается до значения 0.
Если левое и правое выражения принадлежат к различным целочисленным типам данных (например, левое выражение expression — к типу smallint, а правое выражение expression — к типу int), аргумент более короткого типа данных преобразовывается в более длинный тип данных. В этом случае smallintexpression преобразуется в тип int.
Examples
В приведенном ниже примере создается таблица, использующая тип данных int для хранения оригинальных значений и вставки двух значений в одну строку.
CREATE TABLE bitwise
(
a_int_value INT NOT NULL,
b_int_value INT NOT NULL
);
GO
INSERT bitwise
VALUES (170, 75);
GO
Следующий запрос выполняет побитовую эксклюзивную OR для a_int_value столбцов и b_int_value столбцов.
SELECT a_int_value ^ b_int_value
FROM bitwise;
GO
Вот результат.
-----------
225
Двоичное представление числа 170 (a_int_value или A) — 0000 0000 1010 1010. Двоичное представление числа 75 (b_int_value или B) — 0000 0000 0100 1011. Выполнение побитовой эксклюзивной OR операции с этими двумя значениями приводит к двоичному результату 0000 0000 1110 0001, который равен десятичному 225.
(A ^ B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 1110 0001