Teilen über


Unäre Operatoren – Positiv (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankVerwaltete Azure SQL-InstanzAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL-Analyseendpunkt in Microsoft FabricLagerhaus in Microsoft FabricSQL-Datenbank in Microsoft Fabric

Gibt den Wert eines numerischen Ausdrucks zurück (ein unärer Operator). Unäre Operatoren führen eine Operation mit nur einem Ausdruck eines beliebigen Datentyps der numerischen Datentypkategorie aus.

Operator Meaning
+ (unär positiv) Numerischer Wert ist positiv.
- (Unär negativ) Numerischer Wert ist negativ.
~ (Bitweises NOT) Gibt die Ergänzung der Zahl zurück.

Die + Operatoren (positiv) und - (negativ) können für jeden Ausdruck eines der Datentypen der Kategorie numerischer Datentypen verwendet werden. Der ~ (bitweise NOT) Operator kann nur für Ausdrücke eines der Datentypen für ganze Zahlen verwendet werden.

Transact-SQL-Syntaxkonventionen

Syntax

+ numeric_expression

Arguments

numeric_expression

Ein beliebiger gültiger Ausdruck eines der Datentypen in der Kategorie numerischer Datentypen, mit Ausnahme der Datentypen "datetime " und " smalldatetime ".

Rückgabetypen

Gibt den Datentyp von numeric_expression zurück.

Remarks

Obwohl ein unäres Plus vor jedem numerischen Ausdruck angezeigt werden kann, führt es keinen Vorgang mit dem Wert aus, der von dem Ausdruck zurückgegeben wird. Insbesondere gibt er den positiven Wert eines negativen Ausdrucks nicht zurück. Verwenden Sie die ABS-Funktion , um einen positiven Wert eines negativen Ausdrucks zurückzugeben.

Examples

A. Festlegen einer Variablen auf einen positiven Wert

Im folgenden Beispiel wird eine Variable auf einen positiven Wert festgelegt.

USE tempdb;
GO

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

SELECT @MyNumber AS PositiveValue;
GO

Hier sehen Sie das Ergebnis.

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

B. Verwenden des Unary Plus-Operators mit einem negativen Wert

Das folgende Beispiel zeigt die Verwendung des unären Pluszeichens mit einem negativen Ausdruck und der ABS-Funktion für denselben negativen Ausdruck. Das unäre Plus wirkt sich nicht auf den Ausdruck aus, aber die ABS() Funktion gibt den positiven Wert des Ausdrucks zurück.

USE tempdb;
GO

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

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

Hier sehen Sie das Ergebnis.

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