Condividi tramite


ABS (Transact-SQL)

Funzione matematica che restituisce il valore assoluto (positivo) dell'espressione numerica specificata.

Icona di collegamento a un argomento Convenzioni della sintassi Transact-SQL

Sintassi

ABS ( numeric_expression )

Argomenti

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

Tipi restituiti

Restituisce lo stesso tipo del parametro numeric_expression.

Esempi

Nell'esempio seguente vengono illustrati i risultati dell'utilizzo della funzione ABS in tre numeri diversi.

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

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. Il tipo di dati int, ad esempio, consente di archiviare solo valori compresi tra -2,147,483,648 e 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

Messaggio di errore:

"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

Riferimento

CAST e CONVERT (Transact-SQL)

Tipi di dati (Transact-SQL)

Funzioni matematiche (Transact-SQL)

Funzioni predefinite (Transact-SQL)