Database
 sql >> Base de Dados >  >> RDS >> Database

Como calcular um valor absoluto em SQL

Problema:


Você deseja encontrar o valor absoluto de um número.

Exemplo:


Você deseja calcular o valor absoluto (também conhecido como módulo) de cada número na coluna numbers da tabela data .
números
-3.2
0
20

Solução:

SELECT
  ABS(numbers) AS absolute_values
FROM data;

O resultado é:
absolute_values
3.2
0
20

Discussão:


Para calcular o valor absoluto de um número, use o ABS() função. Essa função recebe um número como argumento e retorna seu valor sem o sinal de menos, se houver. O valor retornado sempre será não negativo – zero para o argumento 0, positivo para qualquer outro argumento. Observe que o valor retornado será diferente do argumento somente se o argumento for negativo.

Se, por algum motivo, você precisar converter apenas os valores positivos em seus equivalentes negativos e deixar os outros valores (ou seja, zero e negativo) intocados, você pode usar um sinal de menos antes do ABS() função.
SELECT
  -ABS(numbers) AS non_positive
FROM data;

O resultado será:
não_positivo
-3.2
0
-20