適用於:SQL Server
Azure SQL 資料庫
Azure SQL 受控執行個體
Azure Synapse Analytics
分析平台系統(PDW)
Microsoft Fabric 中的 SQL 分析端點
Microsoft Fabric 中的倉儲
Microsoft Fabric 中的 SQL 資料庫
執行兩個數字的減法運算 (算術減法運算子)。 也可以從日期中減去一個數字 (表示天數)。
Syntax
expression - expression
Arguments
expression
數值數據類型類別目錄之任一數據類型的任何有效 表達式 ,但 位 數據類型除外。 無法與 date、 time、 datetime2 或 datetimeoffset 數據類型搭配使用。
傳回類型
傳回優先順序較高之引數的資料類型。 如需詳細資訊,請參閱 數據類型優先順序。
Examples
本文中的程式代碼範例會使用 AdventureWorks2025 或 AdventureWorksDW2025 範例資料庫,您可以從 Microsoft SQL Server 範例和社群專案 首頁下載。
A. 在 SELECT 語句中使用減法
下列範例會計算最高稅率之州或省之間的稅率差異,以及稅率最低的州或省。
適用於:SQL Server 和 SQL Database。
SELECT MAX(TaxRate) - MIN(TaxRate) AS 'Tax Rate Difference'
FROM Sales.SalesTaxRate
WHERE StateProvinceID IS NOT NULL;
GO
您可以使用括號來變更執行的順序。 首先會驗算括號內的計算。 如果是巢狀括號,最深的巢狀計算優先。
B. 使用日期減法
下列範例會從 日期時間 日期減去數天。
適用於:SQL Server 和 SQL 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
範例:Azure Synapse Analytics 和 Analytics Platform System (PDW)
C. 在 SELECT 語句中使用減法
下列範例會從 dimEmployee 資料表,計算基本稅率最高的員工與稅率最低的員工之間的基本稅率差。
SELECT MAX(BaseRate) - MIN(BaseRate) AS BaseRateDifference
FROM DimEmployee;