Operator unary - Positif (Transact-SQL)
Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System (PDW) SQL di Microsoft Fabric Warehouse di Microsoft Fabric
Mengembalikan nilai ekspresi numerik (operator unary). Operator unary hanya melakukan operasi pada satu ekspresi salah satu jenis data dari kategori jenis data numerik.
Operator | Makna |
---|---|
+ (Unary positive) | Nilai numerik positif. |
- (Unary negatif) | Nilai numerik negatif. |
~ (Bitwise NOT) | Mengembalikan pelengkap angka. |
Operator +
(positif) dan -
(negatif) dapat digunakan pada ekspresi apa pun dari salah satu jenis data dari kategori jenis data numerik. Operator ~
(bitwise NOT
) hanya dapat digunakan pada ekspresi salah satu jenis data dari kategori jenis data bilangan bulat.
Sintaksis
+ numeric_expression
Catatan
Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.
Argumen
numeric_expression
Ekspresi valid apa pun dari salah satu jenis data dalam kategori jenis data numerik, kecuali jenis data tanggalwaktu dan smalldatetime.
Jenis yang dikembalikan
Mengembalikan tipe data numeric_expression.
Keterangan
Meskipun nilai tambah unary dapat muncul sebelum ekspresi numerik apa pun, ia tidak melakukan operasi pada nilai yang dikembalikan dari ekspresi. Secara khusus, ini tidak mengembalikan nilai positif ekspresi negatif. Untuk mengembalikan nilai positif ekspresi negatif, gunakan fungsi ABS .
Contoh
J. Mengatur variabel ke nilai positif
Contoh berikut mengatur variabel ke nilai positif.
USE tempdb;
GO
DECLARE @MyNumber DECIMAL(10, 2);
SET @MyNumber = + 123.45;
SELECT @MyNumber AS PositiveValue;
GO
Berikut adalah hasil yang ditetapkan.
PositiveValue
--------------
123.45
B. Menggunakan operator unary plus dengan nilai negatif
Contoh berikut menunjukkan penggunaan unary plus dengan ekspresi negatif dan fungsi ABS pada ekspresi negatif yang sama. Unary plus tidak memengaruhi ekspresi, tetapi ABS()
fungsi mengembalikan nilai positif ekspresi.
USE tempdb;
GO
DECLARE @Num1 INT;
SET @Num1 = -5;
SELECT + @Num1 AS NegativeValue,
ABS(@Num1) AS PositiveValue;
GO
Berikut adalah hasil yang ditetapkan.
NegativeValue PositiveValue
-------------- --------------
-5 5