- (Вычитание) (Transact-SQL)
Вычитает одно число из другого (оператор арифметического вычитания). Также можно вычесть из даты определенное число дней.
Синтаксис
expression - expression
Аргументы
- expression
Любое допустимое выражение любого числового типа данных, за исключением bit. Не может быть использовано с типами данных date, time, datetime2 или datetimeoffset.
Типы результата
Возвращает тип данных аргумента с более высоким приоритетом. Дополнительные сведения см. в разделе Приоритет типов данных (Transact-SQL).
Примеры
A. Использование вычитания в инструкции SELECT
Следующий пример вычисляет разницу налоговых ставок между штатом или провинцией с наибольшей налоговой ставкой и штатом или провинцией с наименьшей налоговой ставкой.
USE AdventureWorks2008R2;
GO
SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference'
FROM Sales.SalesTaxRate
WHERE StateProvinceID IS NOT NULL;
GO
Можно изменить порядок выполнения, используя скобки. Сначала производятся вычисления выражений в скобках. В случае вложенных скобок вычисления начинаются с самого глубокого уровня.
Б. Использование вычитания из даты
Следующий пример вычитает несколько дней из даты datetime.
USE AdventureWorks2008R2;
GO
DECLARE @altstartdate datetime;
SET @altstartdate = CONVERT(DATETIME, ''January 10, 1900 3:00 AM', 101);
SELECT @altstartdate - 1.5 AS 'Subtract Date';
Результирующий набор:
Subtract Date
-----------------------
1900-01-08 15:00:00.000
(1 row(s) affected)