Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Base de Dados SQL do Azure
Instância Gerida do Azure SQL
Azure Synapse Analytics
Sistema de Plataforma de Análise (PDW)
Ponto de Extremidade de Análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base de Dados SQL no Microsoft Fabric
Executa uma operação OR exclusiva bit a bit entre dois valores inteiros.
Transact-SQL convenções de sintaxe
Syntax
expression ^ expression
Arguments
expression
É qualquer expressão válida de qualquer um dos tipos de dados da categoria de tipo de dados inteiro, ou o bit, ou os tipos de dados binários ou varbinary .
expression é tratada como um número binário para a operação bitwise.
Note
Apenas uma expressão pode ser do tipo de dados binário ou varbinary em uma operação bitwise.
Tipos de Resultados
int se os valores de entrada forem int.
smallint se os valores de entrada forem smallint.
tinyint se os valores de entrada forem tinyint.
Remarks
O ^ operador bit a bit executa um OR lógico exclusivo bit a bit entre as duas expressões, tomando cada bit correspondente para ambas as expressões. Os bits no resultado são definidos como 1 se um (mas não ambos) bits (para o bit atual que está sendo resolvido) nas expressões de entrada tiver um valor de 1. Se ambos os bits forem 0 ou ambos os bits forem 1, o bit no resultado será limpo para um valor de 0.
Se as expressões esquerda e direita tiverem tipos de dados inteiros diferentes (por exemplo, a expressão esquerda é smallint e a expressão direita é int), o argumento do tipo de dados menor é convertido para o tipo de dados maior. Neste caso, a expressãosmallint é convertida em int.
Examples
O exemplo a seguir cria uma tabela usando o tipo de dados int para armazenar os valores originais e insere dois valores em uma linha.
CREATE TABLE bitwise (
a_int_value INT NOT NULL,
b_int_value INT NOT NULL);
GO
INSERT bitwise VALUES (170, 75);
GO
A consulta a seguir executa o OR exclusivo bitwise nas a_int_value colunas e b_int_value .
SELECT a_int_value ^ b_int_value
FROM bitwise;
GO
Aqui está o conjunto de resultados:
-----------
225
(1 row(s) affected)
A representação binária de 170 (a_int_value ou A) é 0000 0000 1010 1010. A representação binária de 75 (b_int_value ou B) é 0000 0000 0100 1011. Executar a operação OR exclusiva bitwise nesses dois valores produz o resultado 0000 0000 1110 0001binário , que é decimal 225.
(A ^ B)
0000 0000 1010 1010
0000 0000 0100 1011
-------------------
0000 0000 1110 0001
Ver também
Expressões (Transact-SQL)
Operadores (Transact-SQL)
Operadores Bitwise (Transact-SQL)
^= (Atribuição Bitwise Exclusive OR) (Transact-SQL)
Operadores compostos (Transact-SQL)