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