En PostgreSQL, el div()
La función devuelve el cociente entero de su primer argumento dividido por su segundo argumento.
Sintaxis
La sintaxis oficial es así:
div(y numeric, x numeric)
Ejemplo
Este es un ejemplo de cómo funciona.
SELECT div(12, 3);
Resultado:
4
En este caso dividí 12 entre 3 y el resultado es 4.
Más divisiones
Aquí hay algunas divisiones más en el mismo número.
SELECT
div(12, 1),
div(12, 2),
div(12, 3),
div(12, 4);
Resultado:
div | div | div | div -----+-----+-----+----- 12 | 6 | 4 | 3
Resultados fraccionarios
Esta función devuelve el cociente entero, por lo que cualquier cantidad fraccionaria se omite del resultado.
SELECT div(12, 5);
Resultado:
2
12 dividido 5 es en realidad 2,4, pero esta función no devuelve la parte fraccionaria, por lo que obtenemos 2.
Tampoco parece haber ningún redondeo. Por ejemplo, 9 dividido por 5 es 1,8, pero div()
devuelve 1 (no se redondea a 2).
SELECT div(9, 5);
Resultado:
1
Entonces se comporta más como aplicar trunc()
(o quizás incluso floor()
) al resultado, en lugar de round()
o ceiling()
.
División por cero
Si intenta dividir un número por cero, obtendrá un error.
SELECT div(12, 0);
Resultado:
ERROR: division by zero
Pero si divides cero por otro número, obtendrás cero.
SELECT div(0, 12);
Resultado:
0