Unäre Operatoren – Positiv (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL-Analyseendpunkt in Microsoft Fabric Warehouse in Microsoft Fabric SQL-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 | Bedeutung |
---|---|
+ (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
Argumente
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_expressionzurück.
Bemerkungen
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 zum Zurückgeben des positiven Werts eines negativen Ausdrucks die ABS-Funktion.
Beispiele
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