sql >> Database >  >> RDS >> PostgreSQL

Hoe rechtvaardigt_hours() werkt in PostgreSQL

In PostgreSQL is de justify_hours() functie stelt u in staat om een ​​interval . aan te passen waarde, zodat perioden van 24 uur worden weergegeven als dagen.

Als u bijvoorbeeld een interval heeft van bijvoorbeeld 24 uur justify_hours() zal het retourneren als 1 dag .

Syntaxis

De functie heeft de volgende syntaxis:

justify_hours(interval)

Waar interval is het interval dat u in dagen wilt weergeven.

Voorbeeld

Hier is een eenvoudig voorbeeld om te demonstreren.

SELECT justify_hours(interval '24 hours');

Resultaat:

1 day

Gedeeltelijke dagen

Hier is een voorbeeld van wat er gebeurt als uw interval geen exact veelvoud van 24 uur is

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

Resultaat (met verticale uitvoer):

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

Merk op dat bij het opgeven van het interval in maanden, het resultaat wordt weergegeven in maanden en dagen, in plaats van alleen in dagen.

In dit voorbeeld gebruikte ik \x om over te schakelen naar de uitgebreide weergave, die de resultaten weergeeft met verticale uitvoer. Dit maakt het iets gemakkelijker om de resultaten te lezen.

Minder dan een dag

Als het interval minder dan 24 uur is, blijft het in uren.

SELECT justify_hours(interval '15 hours');

Resultaat (met verticale uitvoer):

15:00:00

  1. Gebruik IDENT_CURRENT() om de huidige identiteitswaarde op een identiteitskolom in SQL Server te retourneren

  2. RMAN-opdrachten mislukken met ORA-00904:"BS". "GUID":ongeldige identifier

  3. MySQL-back-up- en herstelopdrachten voor databasebeheer

  4. Mysql-query om rijen dynamisch naar kolommen te converteren