Megosztás:


Unary operátorok – Pozitív (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseFelügyelt Azure SQL-példányAzure Synapse AnalyticsElemzési platformrendszer (PDW)SQL Analytics-végpont a Microsoft FabricbenRaktár a Microsoft FabricbenSQL-adatbázis a Microsoft Fabricben

Egy numerikus kifejezés (unary operátor) értékét adja vissza. Az unáris operátorok a numerikus adattípus-kategória egyik adattípusának egyetlen kifejezésén hajtanak végre műveletet.

Operator Meaning
+ (Unáris pozitív) A numerikus érték pozitív.
- (Unary negatív) A numerikus érték negatív.
~ (Bitenkénti NEM) A szám egy-egy kiegészítését adja eredményül.

A + (pozitív) és - a (negatív) operátorok a numerikus adattípus kategória bármelyik adattípusának bármely kifejezésére használhatók. A ~ (bitenkénti NOT) operátor csak az egész szám adattípus kategóriájának bármelyik adattípusának kifejezésére használható.

Transact-SQL szintaxis konvenciók

Syntax

+ numeric_expression

Arguments

numeric_expression

A numerikus adattípus kategóriájában szereplő adattípusok bármelyikének érvényes kifejezése , kivéve a datetime és a smalldatetime adattípust.

Visszatérési típusok

A numeric_expression adattípusát adja vissza.

Remarks

Bár egy unáris plusz bármely numerikus kifejezés előtt megjelenhet, a kifejezésből visszaadott értéken nem hajt végre műveletet. Pontosabban nem a negatív kifejezés pozitív értékét adja vissza. Negatív kifejezés pozitív értékének visszaadásához használja az ABS függvényt.

Examples

A. Változó beállítása pozitív értékre

Az alábbi példa egy változót pozitív értékre állít be.

USE tempdb;
GO

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

SELECT @MyNumber AS PositiveValue;
GO

Itt van az eredmények összessége.

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

B. A unary plus operátor használata negatív értékkel

Az alábbi példa azt mutatja be, hogy a unary plusz egy negatív kifejezéssel és az ABS függvényt ugyanazon a negatív kifejezésen használja. A unary plus nincs hatással a kifejezésre, de a ABS() függvény a kifejezés pozitív értékét adja vissza.

USE tempdb;
GO

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

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

Itt van az eredmények összessége.

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