一元运算符 - 正数 (Transact-SQL)
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric 中的 SQL 终结点 Microsoft Fabric 中的仓库 Microsoft Fabric SQL 数据库
返回数值表达式(一个一元运算符)的值。 一元运算符只对一个表达式执行操作,该表达式可以是 numeric 数据类型类别中的任何一种数据类型。
运算符 | 含义 |
---|---|
+ (一元正) | 数值为正。 |
- (一元负) | 数值为负。 |
~(位非) | 返回数字的补数。 |
+
(正)和-
(负)运算符可用于数值数据类型类别的任何数据类型的任何表达式。 ~
运算符NOT
只能用于整数数据类型类别的任何一种数据类型的表达式。
语法
+ numeric_expression
参数
numeric_expression
数值数据类型类别中任一数据类型的任何有效表达式,日期时间和 smalldatetime 数据类型除外。
返回类型
返回 numeric_expression的数据类型。
备注
尽管一元加号可以出现在任何数值表达式之前,但它对表达式返回的值不执行操作。 具体而言,它不会返回负表达式的正值。 若要返回负表达式的正值,请使用 ABS 函数。
示例
A. 将变量设置为正值
以下示例将变量设置为正值。
USE tempdb;
GO
DECLARE @MyNumber DECIMAL(10, 2);
SET @MyNumber = + 123.45;
SELECT @MyNumber AS PositiveValue;
GO
结果集如下。
PositiveValue
--------------
123.45
B. 将一元加运算符与负值一起使用
以下示例演示如何对同一负表达式使用一元加和负表达式和 ABS 函数。 一元加值不会影响表达式,但 ABS()
函数返回表达式的正值。
USE tempdb;
GO
DECLARE @Num1 INT;
SET @Num1 = -5;
SELECT + @Num1 AS NegativeValue,
ABS(@Num1) AS PositiveValue;
GO
结果集如下。
NegativeValue PositiveValue
-------------- --------------
-5 5