Returns the negative of the value of a numeric expression (a unary operator). Unary operators perform an operation on only one expression of any one of the data types of the numeric data type category.
Operator | Meaning |
---|---|
+ (Positive) | Numeric value is positive. |
- (Negative) | Numeric value is negative. |
~ (Bitwise NOT) | Returns the ones complement of the number. |
The + (Positive) and - (Negative) operators can be used on any expression of any one of the data types of the numeric data type category. The ~ (Bitwise NOT) operator can be used only on expressions of any one of the data types of the integer data type category.
Transact-SQL Syntax Conventions
- numeric_expression
numeric_expression
Is any valid expression of any one of the data types of the numeric data type category, except the date and time category.
Returns the data type of numeric_expression, except that an unsigned tinyint expression is promoted to a signed smallint result.
The following example sets a variable to a negative value.
USE tempdb;
GO
DECLARE @MyNumber decimal(10,2);
SET @MyNumber = -123.45;
SELECT @MyNumber AS NegativeValue;
GO
Here is the result set.
NegativeValue
---------------------------------------
-123.45
(1 row(s) affected)
The following example changes a variable to a negative value.
USE tempdb;
GO
DECLARE @Num1 int;
SET @Num1 = 5;
SELECT @Num1 AS VariableValue, -@Num1 AS NegativeValue;
GO
Here is the result set.
VariableValue NegativeValue
------------- -------------
5 -5
(1 row(s) affected)
The following example returns the negative of a positive constant.
USE ssawPDW;
SELECT TOP (1) - 17 FROM DimEmployee;
Returns
-17
The following example returns the positive of a negative constant.
USE ssawPDW;
SELECT TOP (1) – ( - 17) FROM DimEmployee;
Returns
17
The following example returns the negative of the BaseRate
value for each employee in the dimEmployee
table.
USE ssawPDW;
SELECT - BaseRate FROM DimEmployee;
Data Types (Transact-SQL)
Expressions (Transact-SQL)
Operators (Transact-SQL)