Opérateurs unaires - Positif (Transact-SQL)

S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL analytics endpoint in Microsoft Fabric Warehouse in Microsoft Fabric

Retourne la valeur d'une expression numérique (un opérateur unaire). Les opérateurs unaires effectuent une opération sur une seule expression de n'importe quel type de données de la catégorie des types numériques.

Opérateur Signification
+ (positif unaire) La valeur numérique est positive.
- (Négatif unaire) La valeur numérique est négative.
~ (Opérateur NOT au niveau du bit) Retourne le complément de celui du nombre.

Les + opérateurs (positifs) et - (négatifs) peuvent être utilisés sur n’importe quelle expression d’un des types de données de la catégorie de type de données numérique. L’opérateur ~ (au niveau NOTdu bit) ne peut être utilisé que sur les expressions d’un des types de données de la catégorie de type de données entier.

Conventions de la syntaxe Transact-SQL

Syntaxe

+ numeric_expression

Arguments

numeric_expression

Toute expression valide d’un des types de données de la catégorie de type de données numérique, à l’exception des types de données datetime et smalldatetime.

Types de retour

Retourne le type de données numeric_expression.

Notes

Bien qu'un plus unaire puisse apparaître avant n'importe quelle expression, il n'effectue aucune opération sur la valeur retournée de l'expression. Plus précisément, il ne retourne pas la valeur positive d’une expression négative. Pour retourner la valeur positive d’une expression négative, utilisez la fonction ABS.

Exemples

R. Définir une variable sur une valeur positive

Cet exemple assigne à une variable une valeur positive.

USE tempdb;
GO

DECLARE @MyNumber DECIMAL(10, 2);
SET @MyNumber = + 123.45;

SELECT @MyNumber AS PositiveValue;
GO

Voici le jeu de résultats.

PositiveValue
--------------
123.45

B. Utiliser l’opérateur plus unaire avec une valeur négative

L’exemple suivant montre l’utilisation du plus unaire avec une expression négative et la fonction ABS sur la même expression négative. Le plus unaire n’affecte pas l’expression, mais la ABS() fonction retourne la valeur positive de l’expression.

USE tempdb;
GO

DECLARE @Num1 INT;
SET @Num1 = -5;

SELECT + @Num1 AS NegativeValue,
    ABS(@Num1) AS PositiveValue;
GO

Voici le jeu de résultats.

NegativeValue  PositiveValue
-------------- --------------
-5             5