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
Azure SQL Managed Instance
Base de dados SQL no Microsoft Fabric
Os operadores compostos executam alguma operação e definem um valor original para o resultado da operação. Por exemplo, se uma variável @x for 35igual a , então @x += 2 toma o valor original de @x, soma 2, e define @x para esse novo valor (37).
Transact-SQL fornece os seguintes operadores compostos:
| Operator | Link para mais informações | Action |
|---|---|---|
| += | Atribuição de adição | Adiciona algum valor ao valor original e define o valor original para o resultado. |
| -= | Atribuição de subtração | Subtrai algum valor do valor original e define o valor original para o resultado. |
| *= | Atribuição de multiplicação | Multiplica por um valor e define o valor original para o resultado. |
| /= | Atribuição por divisão | Divide por um valor e define o valor original para o resultado. |
| %= | Atribuição de módulos | Divide por um valor e define o valor original para o módulo. |
| &= | Atribuição bit a bit AND | Executa bit a AND bit e define o valor original para o resultado. |
| ^= | Atribuição exclusiva de OR bitwise | Executa uma exclusividade OR bit a bit e define o valor original para o resultado. |
| |= | Atribuição de OR bit a bit | Executa bit a OR bit e define o valor original para o resultado. |
Syntax
expression <operator> expression
Arguments
expression
Qualquer expressão válida de qualquer um dos tipos de dados na categoria numérica.
Tipos de devolução
Retorna o tipo de dados do argumento com a precedência mais alta. Para obter mais informações, consulte Precedência de tipo de dados.
Remarks
Para obter mais informações, consulte os tópicos relacionados a cada operador.
Examples
Os exemplos a seguir demonstram operações compostas.
DECLARE @x1 AS INT = 27;
SET @x1 += 2;
SELECT @x1 AS Added_2;
DECLARE @x2 AS INT = 27;
SET @x2 -= 2;
SELECT @x2 AS Subtracted_2;
DECLARE @x3 AS INT = 27;
SET @x3 *= 2;
SELECT @x3 AS Multiplied_by_2;
DECLARE @x4 AS INT = 27;
SET @x4 /= 2;
SELECT @x4 AS Divided_by_2;
DECLARE @x5 AS INT = 27;
SET @x5 %= 2;
SELECT @x5 AS Modulo_of_27_divided_by_2;
DECLARE @x6 AS INT = 9;
SET @x6 &= 13;
SELECT @x6 AS Bitwise_AND;
DECLARE @x7 AS INT = 27;
SET @x7 ^= 2;
SELECT @x7 AS Bitwise_Exclusive_OR;
DECLARE @x8 AS INT = 27;
SET @x8 |= 2;
SELECT @x8 AS Bitwise_OR;