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

Funktionsweise von justify_hours() in PostgreSQL

In PostgreSQL die justify_hours() Mit der Funktion können Sie ein Intervall einstellen -Wert, sodass 24-Stunden-Zeiträume als Tage dargestellt werden.

Zum Beispiel, wenn Sie ein Intervall von sagen wir 24 Stunden haben justify_hours() wird es als 1 Tag zurückgeben .

Syntax

Die Funktion hat folgende Syntax:

justify_hours(interval)

Wobei interval ist das Intervall, das Sie in Tagen darstellen möchten.

Beispiel

Hier ist ein einfaches Beispiel zur Veranschaulichung.

SELECT justify_hours(interval '24 hours');

Ergebnis:

1 day

Teiltage

Hier ist ein Beispiel dafür, was passiert, wenn Ihr Intervall kein genaues Vielfaches von 24 Stunden ist

\x
SELECT 
  justify_hours(interval '30 hours'),
  justify_hours(interval '300 hours'),
  justify_hours(interval '3000 hours'),
  justify_hours(interval '3.53 months');

Ergebnis (bei vertikaler Ausgabe):

justify_hours | 1 day 06:00:00
justify_hours | 12 days 12:00:00
justify_hours | 125 days
justify_hours | 3 mons 15 days 21:36:00

Beachten Sie, dass bei Angabe des Intervalls in Monaten das Ergebnis in Monaten und Tagen und nicht nur in Tagen dargestellt wird.

In diesem Beispiel habe ich \x verwendet um zur erweiterten Anzeige umzuschalten, die die Ergebnisse mit vertikaler Ausgabe anzeigt. Dies macht es etwas einfacher, die Ergebnisse zu lesen.

Weniger als ein Tag

Wenn das Intervall weniger als 24 Stunden beträgt, bleibt es in Stunden.

SELECT justify_hours(interval '15 hours');

Ergebnis (bei vertikaler Ausgabe):

15:00:00