PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Funktionsweise von Div() in PostgreSQL

In PostgreSQL das div() Die Funktion gibt den ganzzahligen Quotienten ihres ersten Arguments dividiert durch ihr zweites Argument zurück.

Syntax

Die offizielle Syntax lautet wie folgt:

div(y numeric, x numeric) 

Beispiel

Hier ist ein Beispiel dafür, wie es funktioniert.

SELECT div(12, 3); 

Ergebnis:

4

In diesem Fall habe ich 12 durch 3 dividiert und das Ergebnis ist 4.

Mehr Abteilungen

Hier sind ein paar weitere Divisionen mit derselben Nummer.

SELECT 
  div(12, 1),
  div(12, 2),
  div(12, 3),
  div(12, 4); 

Ergebnis:

div | div | div | div-----+-----+-----+----- 12 | 6 | 4 | 3

Teilergebnisse

Diese Funktion gibt den ganzzahligen Quotienten zurück, sodass alle Bruchteile aus dem Ergebnis weggelassen werden.

SELECT div(12, 5); 

Ergebnis:

2

12 geteilt durch 5 ist eigentlich 2,4, aber diese Funktion gibt den Bruchteil nicht zurück und wir erhalten 2.

Es scheint auch keine Rundung vorgenommen zu haben. Zum Beispiel ist 9 geteilt durch 5 1,8, aber div() gibt 1 zurück (es wird nicht auf 2 aufgerundet).

SELECT div(9, 5); 

Ergebnis:

1

Es verhält sich also eher wie das Anwenden von trunc() (oder vielleicht sogar floor() ) zum Ergebnis, anstatt round() oder ceiling() .

Division durch Null

Wenn Sie versuchen, eine Zahl durch Null zu teilen, erhalten Sie eine Fehlermeldung.

SELECT div(12, 0); 

Ergebnis:

FEHLER:Division durch Null

Aber wenn Sie Null durch eine andere Zahl teilen, erhalten Sie einfach Null.

SELECT div(0, 12); 

Ergebnis:

0