En MariaDB, ABS() es una función numérica integrada que devuelve el valor absoluto (no negativo) de su argumento.
Sintaxis
La sintaxis es así:
ABS(X)
Donde X es el numero en cuestion Si X no es un número, se convierte a un tipo numérico.
Ejemplo
He aquí un ejemplo:
SELECT ABS(300); Resultado:
+----------+ | ABS(300) | +----------+ | 300 | +----------+
Obtenemos el mismo resultado si el número es negativo:
SELECT ABS(-300); Resultado:
+-----------+ | ABS(-300) | +-----------+ | 300 | +-----------+
Argumento no numérico
Si el argumento no es un número, se convierte a un tipo numérico.
Ejemplo:
SELECT ABS(DATE '2020-12-10'); Resultado:
+------------------------+ | ABS(DATE '2020-12-10') | +------------------------+ | 20201210 | +------------------------+
Sin embargo, esto depende del argumento/contexto.
Esto es lo que sucede cuando omito la DATE palabra clave:
SELECT ABS('2020-12-10'); Resultado:
+-------------------+
| ABS('2020-12-10') |
+-------------------+
| 2020 |
+-------------------+
1 row in set, 1 warning (0.000 sec) Revisemos la advertencia:
SHOW WARNINGS; Resultado:
+---------+------+------------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: '2020-12-10' | +---------+------+------------------------------------------------+
Argumento faltante
Llamando a ABS() sin un argumento da como resultado un error:
SELECT ABS(); Resultado:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'ABS'