- (Subtract) (Transact-SQL)
Subtracts two numbers (an arithmetic subtraction operator). Can also subtract a number, in days, from a date.
Returns the data type of the argument with the higher precedence. For more information, see Data Type Precedence (Transact-SQL).
A. Using subtraction in a SELECT statement
The following example calculates the difference in tax rate between the state or province with the highest tax rate and the state or province with the lowest tax rate.
USE AdventureWorks; GO SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference' FROM Sales.SalesTaxRate WHERE StateProvinceID IS NOT NULL; GO
You can change the order of execution by using parentheses. Calculations inside parentheses are evaluated first. If parentheses are nested, the most deeply nested calculation has precedence.
B. Using date subtraction
The following example subtracts a number of days from a datetime date.
USE AdventureWorks; GO DECLARE @altstartdate datetime; SET @altstartdate = CONVERT(DATETIME, 'January 10, 1900 3:00 AM', 101); SELECT @altstartdate - 1.5 AS 'Subtract Date';
Here is the result set:
Subtract Date
-----------------------
1900-01-08 15:00:00.000
(1 row(s) affected)
