-(减法)(Transact-SQL)
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 中的 SQL 终结点 Microsoft Fabric 中的仓库 Microsoft Fabric SQL 数据库
将两个数相减(减法算术运算符)。 还可以从日期中减去以天为单位的数字。
语法
expression - expression
参数
expression
数值数据类型类别的任一数据类型(bit 数据类型除外)的任何有效表达式。 不能与 date、time、datetime2 或 datetimeoffset 数据类型一起使用。
结果类型
返回优先级较高的参数的数据类型。 有关详细信息,请参阅数据类型优先级 (Transact-SQL)。
示例
A. 在 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 和 Analytics Platform System (PDW)
C. 在 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)