Export (0) Print
Expand All
Expand Minimize
4 out of 11 rated this helpful - Rate this topic

- (Subtract) (Transact-SQL)

Subtracts two numbers (an arithmetic subtraction operator). Can also subtract a number, in days, from a date.

Topic link icon Transact-SQL Syntax Conventions

expression - expression

Is any valid expression of any one of the data types of the numeric data type category, except the bit data type.

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 state or province with the highest tax rate and the state or province with the lowest tax rate.

USE AdventureWorks;
SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference'
FROM Sales.SalesTaxRate

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;
DECLARE @altstartdate datetime;
SET @altstartdate = CONVERT(DATETIME, '01/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)
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

© 2014 Microsoft. All rights reserved.