– (вычитание) (Transact-SQL)
Область применения: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure конечной точке аналитики платформы Аналитики Azure Synapse Analytics (PDW) в Microsoft Fabric Хранилище в базе данных Microsoft Fabric SQL в Microsoft Fabric
Вычитает одно число из другого (оператор арифметического вычитания). Также можно вычесть из даты определенное число дней.
Соглашения о синтаксисе Transact-SQL
Синтаксис
expression - expression
Аргументы
выражение
Любое допустимое выражение expression любого числового типа данных, кроме bit. Нельзя использовать с типами данных date, time, datetime2 или datetimeoffset.
Типы результата
Возвращает результат типа данных аргумента с более высоким приоритетом. Дополнительные сведения см. в разделе Приоритет типов данных (Transact-SQL).
Примеры
А. Использование вычитания в инструкции SELECT
Следующий пример вычисляет разницу налоговых ставок между штатом или провинцией с наибольшей налоговой ставкой и штатом или провинцией с наименьшей налоговой ставкой.
Применимо к: SQL Server и База данных SQL.
-- Uses AdventureWorks
SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference'
FROM Sales.SalesTaxRate
WHERE StateProvinceID IS NOT NULL;
GO
Можно изменить порядок выполнения, используя скобки. Сначала производятся вычисления выражений в скобках. В случае вложенных скобок вычисления начинаются с самого глубокого уровня.
B. Использование вычитания из даты
Следующий пример вычитает указанное число дней из даты datetime
.
Применимо к: SQL Server и База данных SQL.
-- Uses the AdventureWorks sample database
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)
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
В. Использование вычитания в инструкции SELECT
В следующем примере вычисляется разница базовых окладов между сотрудником с наибольшим базовым окладом и сотрудником с наименьшей налоговой ставкой из таблицы dimEmployee
.
-- Uses AdventureWorks
SELECT MAX(BaseRate) - MIN(BaseRate) AS BaseRateDifference
FROM DimEmployee;
См. также
-= (назначение вычитания) (Transact-SQL)
Составные операторы (Transact-SQL)
Арифметические операторы (Transact-SQL)
- (Отрицательное значение) (Transact-SQL)
Типы данных (Transact-SQL)
Выражения (Transact-SQL)
Встроенные функции (Transact-SQL)
SELECT (Transact-SQL)