V PostgreSQL, div() funkce vrátí celočíselný podíl svého prvního argumentu dělený jeho druhým argumentem.
Syntaxe
Oficiální syntaxe vypadá takto:
div(y numeric, x numeric) Příklad
Zde je příklad, jak to funguje.
SELECT div(12, 3); Výsledek:
4
V tomto případě jsem vydělil 12 3 a výsledek je 4.
Další divize
Zde je několik dalších divizí na stejném čísle.
SELECT
div(12, 1),
div(12, 2),
div(12, 3),
div(12, 4); Výsledek:
div | div | div | div -----+-----+-----+----- 12 | 6 | 4 | 3
Dílčí výsledky
Tato funkce vrací celočíselný podíl, takže z výsledku jsou vynechány jakékoli zlomkové částky.
SELECT div(12, 5); Výsledek:
2
12 děleno 5 je ve skutečnosti 2,4, ale tato funkce nevrací zlomkovou část, a tak dostáváme 2.
Nezdá se, že by bylo provedeno žádné zaokrouhlení. Například 9 děleno 5 je 1,8, ale div() vrátí 1 (nezaokrouhluje se nahoru na 2).
SELECT div(9, 5); Výsledek:
1
Takže se to chová spíše jako použití trunc() (nebo možná dokonce floor() ) na výsledek, nikoli round() nebo ceiling() .
Dělení nulou
Pokud se pokusíte vydělit číslo nulou, dostanete chybu.
SELECT div(12, 0); Výsledek:
ERROR: division by zero
Pokud ale vydělíte nulu jiným číslem, dostanete jen nulu.
SELECT div(0, 12); Výsledek:
0