ABS (Transact-SQL)

Si applica a: SQL Server (tutte le versioni supportate) Azure SQL Database Istanza gestita di SQL di Azure Azure Synapse Analytics Analytics Platform System (PDW)

Funzione matematica che restituisce il valore assoluto (positivo) dell'espressione numerica specificata. (ABS modifica i valori negativi in valori ABS positivi. Non ha effetto su valori zero o positivi.

Icona di collegamento argomento IconaTransact-SQL Sintassi Transact-SQL Convenzioni

Sintassi

ABS ( numeric_expression )  

Nota

Per visualizzare la sintassi Transact-SQL per SQL Server 2014 e versioni precedenti, vedere Documentazione delle versioni precedenti.

Argomenti

numeric_expression
Espressione della categoria del tipo di dati numerici esatti o numerici approssimati.

Tipi restituiti

Restituisce lo stesso tipo di numeric_expression.

Esempi

L'esempio illustra i risultati dell'uso della funzione ABS in tre numeri diversi.

SELECT ABS(-1.0), ABS(0.0), ABS(1.0);  

Questo è il set di risultati.

---- ---- ----  
1.0  .0   1.0  

La funzione ABS può produrre un errore di overflow quando il valore assoluto di un numero è maggiore del numero più alto che può essere rappresentato dal tipo di dati specificato. Ad esempio, il tipo di dati int ha intervallo di valori da -2,147,483,648 a 2,147,483,647. Il calcolo del valore assoluto per il valore integer con segno -2,147,483,648 provoca un errore di overflow, in quanto il valore assoluto corrispondente è maggiore dell'intervallo positivo per il tipo di dati int.

DECLARE @i INT;  
SET @i = -2147483648;  
SELECT ABS(@i);  
GO  

Restituisce il messaggio di errore seguente:

"Messaggio 8115, livello 16, stato 2, riga 3"

"Errore di runtime: si è verificato un errore di overflow aritmetico durante la conversione del tipo di dati da espressione a int".

Vedere anche

CAST e CONVERT (Transact-SQL)
Tipi di dati (Transact-SQL)
Funzioni matematiche (Transact-SQL)
Funzioni predefinite (Transact-SQL)