sql >> Base de Datos >  >> RDS >> Database

Cómo calcular un valor absoluto en SQL

Problema:

Quieres encontrar el valor absoluto de un número.

Ejemplo:

Desea calcular el valor absoluto (también conocido como módulo) de cada número en la columna numbers de la tabla data .

números
-3.2
0
20

Solución:

SELECT
  ABS(numbers) AS absolute_values
FROM data;

El resultado es:

valores_absolutos
3.2
0
20

Discusión:

Para calcular el valor absoluto de un número, utilice el ABS() función. Esta función toma un número como argumento y devuelve su valor sin el signo menos, si lo hay. El valor devuelto siempre será no negativo – cero para el argumento 0, positivo para cualquier otro argumento. Tenga en cuenta que el valor devuelto diferirá del argumento solo si el argumento es negativo.

Si, por alguna razón, necesita convertir solo los valores positivos a su equivalente negativo y dejar los otros valores (es decir, cero y negativos) intactos, puede usar un signo menos antes del ABS() función.

SELECT
  -ABS(numbers) AS non_positive
FROM data;

El resultado será:

no_positivo
-3.2
0
-20