SIGN (Transact-SQL)

适用于: SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics 分析平台系统 (PDW) Microsoft Fabric 中的 SQL 分析端点 Microsoft Fabric 中的仓库

返回指定表达式的正号 (+1)、零 (0) 或负号 (-1)。

Transact-SQL 语法约定

语法

SIGN ( numeric_expression )  

参数

numeric_expression
是精确或近似数值数据类型类别(bit 数据类型除外)的表达式

返回类型

指定的表达式 返回类型
bigint bigint
int/smallint/tinyint int
money/smallmoney money
numeric/decimal numeric/decimal
其他类型 float

示例

以下示例返回从 -1 到 1 的 SIGN 数值。

DECLARE @value REAL  
SET @value = -1  
WHILE @value < 2  
   BEGIN  
      SELECT SIGN(@value)  
      SET NOCOUNT ON  
      SELECT @value = @value + 1  
      SET NOCOUNT OFF  
   END  
SET NOCOUNT OFF  
GO  

结果集如下。

(1 row(s) affected)  
  
------------------------   
-1.0                       
  
(1 row(s) affected)  
  
------------------------   
0.0                        
  
(1 row(s) affected)  
  
------------------------   
1.0                        
  
(1 row(s) affected)  

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

以下示例返回三个数字的 SIGN 值。

SELECT SIGN(-125), SIGN(0), SIGN(564);  

结果集如下。

-----  -----  -----  
-1     0      1

另请参阅

数学函数 (Transact-SQL)