Udostępnij za pomocą


Operatory jednoargumentowe — ujemne (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punkt końcowy analizy SQL w usłudze Microsoft FabricHurtownia danych w usłudze Microsoft FabricBaza danych SQL w usłudze Microsoft Fabric

Zwraca wartość ujemną wartości wyrażenia liczbowego (operator jednoargumentowy). Operatory jednoargumentowe wykonują operację tylko na jednym wyrażeniu jednego z typów danych kategorii typów danych liczbowych.

Operator Meaning
+ (Jednoargumentowy dodatni) Wartość liczbowa jest dodatnia.
- (jednoargumentowe ujemne) Wartość liczbowa jest ujemna.
~ (Bitowy NOT) Zwraca uzupełnienie liczby.

Operatory + (dodatnie) i - (ujemne) mogą być używane w dowolnym wyrażeniu dowolnego typu danych kategorii typu danych liczbowych. Operator ~ (bitowy NOT) może być używany tylko dla wyrażeń dowolnego z typów danych kategorii typu danych liczb całkowitych.

Transact-SQL konwencje składni

Syntax

- numeric_expression

Arguments

numeric_expression

Dowolne prawidłowe wyrażenie dowolnego z typów danych kategorii typu danych liczbowych, z wyjątkiem kategorii daty i godziny.

Typy zwracane

Zwraca typ danych numeric_expression, z tą różnicą, że niepodpisane wyrażenie tinyint jest promowane do podpisanego małego wyniku.

Examples

A. Ustawianie zmiennej na wartość ujemną

W poniższym przykładzie zmienna jest ustawiana na wartość ujemną.

USE tempdb;
GO

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

SELECT @MyNumber AS NegativeValue;
GO

Oto zestaw wyników.

NegativeValue
--------------
-123.45

B. Zmienianie zmiennej na wartość ujemną

Poniższy przykład zmienia zmienną na wartość ujemną.

USE tempdb;
GO

DECLARE @Num1 INT;
SET @Num1 = 5;

SELECT @Num1 AS VariableValue,
    -@Num1 AS NegativeValue;
GO

Oto zestaw wyników.

VariableValue NegativeValue
------------- -------------
5             -5

Przykłady: Azure Synapse Analytics and Analytics Platform System (PDW)

Przykłady kodu w tym artykule korzystają z przykładowej bazy danych AdventureWorks2025 lub AdventureWorksDW2025, którą można pobrać ze strony głównej Przykładów programu Microsoft SQL Server i projektów społeczności.

C. Zwracanie ujemnej stałej dodatniej

Poniższy przykład zwraca wartość ujemną stałej dodatniej.

USE ssawPDW;
GO

SELECT TOP (1) - 17 FROM DimEmployee;

Oto zestaw wyników.

-17

Ten sam wynik jest zwracany tak, jakby jednoargumentowa wartość ujemna została zastosowana do wartości z jednoargumentowymi operatorami jednoargumentowymi — zastosowane dodatnie .

USE ssawPDW;
GO

SELECT TOP (1) - (+ 17)
FROM DimEmployee;

Oto zestaw wyników.

-17

D. Zwracanie dodatniej stałej ujemnej

Poniższy przykład zwraca dodatnią stałą ujemną.

USE ssawPDW;
GO

SELECT TOP (1) - (- 17)
FROM DimEmployee;

Oto zestaw wyników.

17

E. Zwracanie wartości ujemnej kolumny

Jednoargumentowy ujemny odwraca operator liczbowy wartości kolumny. W rezultacie wartości ujemne są zwracane z wartości dodatnich, a wartości dodatnie są zwracane z wartości ujemnych.

Poniższy przykład zwraca wartość ujemną BaseRate dla każdego pracownika w DimEmployee tabeli.

USE ssawPDW;
GO

SELECT - BaseRate
FROM DimEmployee;