En MariaDB, CEILING() es una función numérica incorporada que devuelve el valor entero más pequeño no menor que su argumento.
Sintaxis
La sintaxis es así:
CEILING(X)
Donde X es el valor al que aplicar la operación.
Ejemplo
He aquí un ejemplo:
SELECT CEILING(2.34); Resultado:
+---------------+ | CEILING(2.34) | +---------------+ | 3 | +---------------+
Pasar un valor negativo produce el siguiente resultado:
SELECT CEILING(-2.34); Resultado:
+----------------+ | CEILING(-2.34) | +----------------+ | -2 | +----------------+
Comparado con ROUND()
El CEILING() la función es diferente a ROUND() función. El ROUND() redondearía el número hacia abajo en algunos casos, mientras que CEILING() siempre devuelve el valor entero más pequeño no menor que su argumento.
SELECT
CEILING(2.34),
ROUND(2.34); Resultado:
+---------------+-------------+ | CEILING(2.34) | ROUND(2.34) | +---------------+-------------+ | 3 | 2 | +---------------+-------------+
Además, ROUND() nos permite especificar el número de decimales a redondear:
SELECT
CEILING(2.34),
ROUND(2.34, 1); Resultado:
+---------------+----------------+ | CEILING(2.34) | ROUND(2.34, 1) | +---------------+----------------+ | 3 | 2.3 | +---------------+----------------+
Argumentos no numéricos
Esto es lo que sucede cuando proporcionamos un argumento no numérico:
SELECT CEILING('Ten'); Resultado:
+----------------+
| CEILING('Ten') |
+----------------+
| 0 |
+----------------+
1 row in set, 1 warning (0.001 sec) Revisemos la advertencia:
SHOW WARNINGS; Resultado:
+---------+------+-----------------------------------------+ | Level | Code | Message | +---------+------+-----------------------------------------+ | Warning | 1292 | Truncated incorrect DOUBLE value: 'Ten' | +---------+------+-----------------------------------------+
Argumentos faltantes
Llamando a CEILING() sin un argumento da como resultado un error:
SELECT CEILING(); Resultado:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'CEILING'