PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Jak działa justify_interval() w PostgreSQL

W PostgreSQL funkcja justify_interval() funkcja dostosowuje interwał za pomocą justify_daysjustify_hours . Pozwala na użycie dodatkowych ustawień znaku w celu dostosowania interwału.

Składnia

Funkcja ma następującą składnię:

justify_interval(interval)

Gdzie interval to interwał, który chcesz dostosować.

Przykład

Oto podstawowy przykład do zademonstrowania.

SELECT justify_interval(interval '1 mon -3 hours');

Wynik:

29 days 21:00:00

Porównanie z justify_hours() i justify_days()

Oto porównanie z justify_hours() i justify_days() używając tego samego argumentu.

\x
SELECT 
  justify_interval(interval '1 mon -3 hours'),
  justify_hours(interval '1 mon -3 hours'),
  justify_days(interval '1 mon -3 hours');

Wynik (przy użyciu wyjścia pionowego):

justify_interval | 29 days 21:00:00
justify_hours    | 1 mon -03:00:00
justify_days     | 1 mon -03:00:00

W tym przykładzie użyłem \x aby przełączyć się na wyświetlacz rozszerzony, który wyświetla wyniki za pomocą wyjścia pionowego.

Poniżej znajduje się więcej porównań z różnymi argumentami.

justify_interval()

SELECT 
  justify_interval(interval '30 hours'),
  justify_interval(interval '300 hours'),
  justify_interval(interval '3000 hours'),
  justify_interval(interval '3.53 months'),
  justify_interval(interval '18 days'),
  justify_interval(interval '31 days'),
  justify_interval(interval '45 days'),
  justify_interval(interval '290 days');

Wynik (przy użyciu wyjścia pionowego):

justify_interval | 1 day 06:00:00
justify_interval | 12 days 12:00:00
justify_interval | 4 mons 5 days
justify_interval | 3 mons 15 days 21:36:00
justify_interval | 18 days
justify_interval | 1 mon 1 day
justify_interval | 1 mon 15 days
justify_interval | 9 mons 20 days

justify_hours()

SELECT 
  justify_hours(interval '30 hours'),
  justify_hours(interval '300 hours'),
  justify_hours(interval '3000 hours'),
  justify_hours(interval '3.53 months'),
  justify_hours(interval '18 days'),
  justify_hours(interval '31 days'),
  justify_hours(interval '45 days'),
  justify_hours(interval '290 days');

Wynik (przy użyciu wyjścia pionowego):

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
justify_hours | 18 days
justify_hours | 31 days
justify_hours | 45 days
justify_hours | 290 days

uzasadnij_dni()

SELECT 
  justify_days(interval '30 hours'),
  justify_days(interval '300 hours'),
  justify_days(interval '3000 hours'),
  justify_days(interval '3.53 months'),
  justify_days(interval '18 days'),
  justify_days(interval '31 days'),
  justify_days(interval '45 days'),
  justify_days(interval '290 days');

Wynik (przy użyciu wyjścia pionowego):

justify_days | 30:00:00
justify_days | 300:00:00
justify_days | 3000:00:00
justify_days | 3 mons 15 days 21:36:00
justify_days | 18 days
justify_days | 1 mon 1 day
justify_days | 1 mon 15 days
justify_days | 9 mons 20 days


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. GroupingError:ERROR:kolumna musi występować w klauzuli GROUP BY lub być używana w funkcji agregującej

  2. MySQL a PostgreSQL dla aplikacji internetowych

  3. Jak dokładnie wyczyścić i ponownie zainstalować postgresql na ubuntu?

  4. PostgreSQL:Równoległość zapytań w działaniu

  5. Jak wykonać kopię zapasową bazy danych postgresql z poziomu psql?