Operadores unários – positivo

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPonto de extremidade de análises SQL no Microsoft FabricWarehouse no Microsoft Fabric

Retorna o valor de uma expressão numérica (um operador unário). Os operadores unários desempenham uma operação em apenas uma expressão de qualquer um dos tipos de dados da categoria de tipo de dados numéricos.

Operador Significado
+ (Positivo) Valor numérico é positivo.
- (Negativo) Valor numérico é negativo.
~ (Não de bit a bit) Retorna os complementos do número.

Os operadores + (Positivo) e – (Negativo) podem ser usados em qualquer expressão de qualquer um dos tipos de dados da categoria de tipo de dados numérico. O operador ~ (NOT bit a bit) pode ser usado somente nas expressões de qualquer um dos tipos de dados da categoria de tipo de dados inteiros.

Convenções de sintaxe de Transact-SQL

Sintaxe

+ numeric_expression  

Observação

Para exibir a sintaxe do Transact-SQL para o SQL Server 2014 (12.x) e versões anteriores, confira a Documentação das versões anteriores.

Argumentos

numeric_expression
É qualquer expression válida de um dos tipos de dados da categoria de tipo de dados numéricos, com exceção dos tipos de dados datetime e smalldatetime.

Tipos de resultado

Retorna o tipo de dados de numeric_expression.

Comentários

Embora uma adição unária possa aparecer antes de qualquer expressão numérica, nenhuma operação é executada no valor retornado da expressão. Especificamente, não retornará o valor positivo de uma expressão negativa. Para retornar o valor positivo de uma expressão negativa, use a função ABS.

Exemplos

a. Definindo uma variável como um valor positivo

O exemplo a seguir define uma variável como um valor positivo.

DECLARE @MyNumber DECIMAL(10,2);  
SET @MyNumber = +123.45;  
SELECT @MyNumber;  
GO  

Este é o conjunto de resultados:

-----------   
123.45            
  
(1 row(s) affected)  

B. Usando o operador de adição unária com um valor negativo

O exemplo a seguir mostra o uso da adição unária com uma expressão negativa e da função ABS() na mesma expressão negativa. A adição unária não afeta a expressão, mas a função ABS retorna o valor positivo da expressão.

USE tempdb;  
GO  
DECLARE @Num1 INT;  
SET @Num1 = -5;  
SELECT +@Num1, ABS(@Num1);  
GO  

Este é o conjunto de resultados:

----------- -----------  
-5          5  
  
(1 row(s) affected)  

Consulte Também

Tipos de dados (Transact-SQL)
Expressões (Transact-SQL)
Operadores (Transact-SQL)
ABS (Transact-SQL)