sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan justify_hours() virker i PostgreSQL

I PostgreSQL er justify_hours() funktionen giver dig mulighed for at justere et interval værdi, så 24-timers tidsperioder er repræsenteret som dage.

For eksempel, hvis du har et interval på f.eks. 24 timer justify_hours() returnerer det som 1 dag .

Syntaks

Funktionen har følgende syntaks:

justify_hours(interval)

Hvor interval er det interval, du ønsker repræsenteret i dage.

Eksempel

Her er et grundlæggende eksempel at demonstrere.

SELECT justify_hours(interval '24 hours');

Resultat:

1 day

Delvise dage

Her er et eksempel på, hvad der sker, når dit interval ikke er et nøjagtigt multiplum af 24 timer

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

Resultat (ved hjælp af lodret output):

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

Bemærk, at når du angiver intervallet i måneder, er resultatet repræsenteret i måneder og dage i stedet for kun dage.

I dette eksempel brugte jeg \x for at skifte over til udvidet visning, som viser resultaterne ved hjælp af lodret output. Dette gør det lidt nemmere at læse resultaterne.

Mindre end en dag

Hvis intervallet er mindre end 24 timer, forbliver det i timer.

SELECT justify_hours(interval '15 hours');

Resultat (ved hjælp af lodret output):

15:00:00

  1. Sådan vises forespørgsel og resultater på separat fane i SQL Server Management Studio (SSMS) - SQL Server / TSQL-vejledning, del 15

  2. En databasemodel for en MOOC-platform

  3. Forberedelse af en MySQL- eller MariaDB-server til produktion - Anden del

  4. SQL Server-destination vs OLE DB-destination