Share via


一元運算子 - 負

適用于: Microsoft Fabric 中 Microsoft Fabric 倉儲中的 SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW) SQL 分析端點

傳回數值運算式 (一元運算子) 的負值。 一元運算子只能在屬於數值資料類型類別目錄之任何資料類型的單一運算式上執行運算。

運算子 意義
+ (正) 數值是正的。
- (負) 數值是負的。
~ (位元 NOT) 傳回數字的一補數。

屬於數值資料類型類別目錄之任一資料類型的任何有效運算式,都可以使用 + (正) 和 - (負) 運算子。 ~ (位元 NOT) 運算子只能用在屬於整數資料類型類別目錄之任一資料類型的運算式上。

Transact-SQL 語法慣例

Syntax

- numeric_expression  

注意

若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔

引數

numeric_expression
這是在日期和時間類別目錄以外,屬於數值資料類型類別目錄之任何資料類型的任何有效運算式

結果類型

除了不帶正負號的 tinyint 運算式升級為帶正負號 smallint 結果,傳回 numeric_expression 的資料類型。

範例

A. 將變數設為負值

下列範例會將變數設為負值。

USE tempdb;  
GO  
DECLARE @MyNumber DECIMAL(10,2);  
SET @MyNumber = -123.45;  
SELECT @MyNumber AS NegativeValue;  
GO  

以下為結果集。

NegativeValue  
---------------------------------------  
-123.45  
  
(1 row(s) affected)  
  

B. 將變數變更為負值

下列範例會將變數改成負值。

USE tempdb;  
GO  
DECLARE @Num1 INT;  
SET @Num1 = 5;  
SELECT @Num1 AS VariableValue, -@Num1 AS NegativeValue;  
GO  

以下為結果集。

VariableValue NegativeValue  
------------- -------------  
5             -5  
  
(1 row(s) affected)  
  

範例:Azure Synapse Analytics 和 Analytics Platform System (PDW)

C. 傳回正常數的負值

下列範例會傳回正常數的負值。

USE ssawPDW;  
  
SELECT TOP (1) - 17 FROM DimEmployee;  

傳回

-17  

D. 傳回負常數的正值

下列範例會傳回負常數的正值。

USE ssawPDW;  
  
SELECT TOP (1) - ( - 17) FROM DimEmployee;  

傳回

17  

E. 傳回資料行的負值

下列範例會傳回 dimEmployee 資料表中每一位員工 BaseRate 值的負值。

USE ssawPDW;  
  
SELECT - BaseRate FROM DimEmployee;  

另請參閱

資料類型 (Transact-SQL)
運算式 (Transact-SQL)
運算子 (Transact-SQL)