Operadores unários – Negative

Aplica-se a:SQL ServerBanco de Dados SQL do AzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsPDW (Analytics Platform System)Ponto de extremidade de SQL no Microsoft FabricWarehouse no Microsoft Fabric

Retorna o negativo do 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 expressão válida de qualquer tipo de dados da categoria de tipo de dados numéricos, exceto a categoria de data e hora.

Tipos de resultado

Retorna o tipo de dados de numeric_expression, exceto que uma expressão tinyint sem sinal é promovida a um resultado smallint com sinal.

Exemplos

a. Definindo uma variável como um valor negativo

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

USE tempdb;  
GO  
DECLARE @MyNumber DECIMAL(10,2);  
SET @MyNumber = -123.45;  
SELECT @MyNumber AS NegativeValue;  
GO  

Este é o conjunto de resultados.

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

B. Alterando uma variável para um valor negativo

O exemplo a seguir altera uma variável para um valor negativo.

USE tempdb;  
GO  
DECLARE @Num1 INT;  
SET @Num1 = 5;  
SELECT @Num1 AS VariableValue, -@Num1 AS NegativeValue;  
GO  

Este é o conjunto de resultados.

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

Exemplos: Azure Synapse Analytics e PDW (Analytics Platform System)

C. Retornando o negativo de uma constante positiva

O exemplo a seguir retorna o negativo de uma constante positiva.

USE ssawPDW;  
  
SELECT TOP (1) - 17 FROM DimEmployee;  

Retornos

-17  

D. Retornando o positivo de uma constante negativa

O exemplo a seguir retorna o positivo de uma constante negativa.

USE ssawPDW;  
  
SELECT TOP (1) - ( - 17) FROM DimEmployee;  

Retornos

17  

E. Retornando o negativo de uma coluna

O exemplo a seguir retorna o negativo do valor de BaseRate para cada funcionário da tabela dimEmployee.

USE ssawPDW;  
  
SELECT - BaseRate FROM DimEmployee;  

Consulte Também

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