Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Применимо к:SQL Server
База данных Azure SQL
Управляемый экземпляр Azure SQL
Azure Synapse Analytics
Система платформы аналитики (PDW)
Конечная точка SQL аналитики в Microsoft Fabric
Хранилище в Microsoft Fabric
База данных SQL в Microsoft Fabric
Вычитает одно число из другого (оператор арифметического вычитания). Также можно вычесть из даты определенное число дней.
Соглашения о синтаксисе Transact-SQL
Syntax
expression - expression
Arguments
expression
Любое допустимое выражение любого из типов данных категории числовых типов данных, за исключением битового типа данных. Нельзя использовать с типами данных date, time, datetime2 или datetimeoffset .
Типы возвращаемых данных
Возвращает результат типа данных аргумента с более высоким приоритетом. Дополнительные сведения см. в разделе "Приоритет типа данных".
Examples
Примеры кода в этой статье используют базу данных образца AdventureWorks2025 или AdventureWorksDW2025, которую можно скачать с домашней страницы образцов и проектов сообщества Microsoft SQL Server и.
A. Использование вычитания в инструкции SELECT
В следующем примере вычисляется разница в налоговой ставке между государством или провинцией с самой высокой налоговой ставкой и государством или провинцией с самой низкой налоговой ставкой.
Область применения: SQL Server и База данных SQL.
SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference'
FROM Sales.SalesTaxRate
WHERE StateProvinceID IS NOT NULL;
GO
Можно изменить порядок выполнения, используя скобки. Сначала производятся вычисления выражений в скобках. В случае вложенных скобок вычисления начинаются с самого глубокого уровня.
B. Использование вычитания даты
В следующем примере вычитается несколько дней из даты и времени .
Применимо к: SQL Server и База данных SQL.
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
Примеры: Azure Synapse Analytics и система платформы аналитики (PDW)
C. Использование вычитания в инструкции SELECT
В следующем примере вычисляется разница базовых окладов между сотрудником с наибольшим базовым окладом и сотрудником с наименьшей налоговой ставкой из таблицы dimEmployee.
SELECT MAX(BaseRate) - MIN(BaseRate) AS BaseRateDifference
FROM DimEmployee;