sql >> Databáze >  >> RDS >> PostgreSQL

Jak funguje justify_days() v PostgreSQL

V PostgreSQL, justify_days() funkce umožňuje upravit interval hodnotu, takže 30denní časová období jsou reprezentována jako měsíce.

Pokud máte například interval řekněme 30 dní , justify_days() vrátí jej jako 1 měsíc .

Syntaxe

Funkce má následující syntaxi:

justify_days(interval)

Kde interval je interval, který chcete zobrazit v měsících.

Příklad

Zde je základní příklad k demonstraci.

SELECT justify_days(interval '30 days');

Výsledek:

1 mon

Část měsíců

Zde je příklad toho, co se stane, když váš interval není přesným násobkem 30 dnů.

\x
SELECT 
  justify_days(interval '31 days'),
  justify_days(interval '45 days'),
  justify_days(interval '290 days');

Výsledek (při použití vertikálního výstupu):

justify_days | 1 mon 1 day
justify_days | 1 mon 15 days
justify_days | 9 mons 20 days

V tomto příkladu jsem použil \x pro přepnutí na rozšířené zobrazení, které zobrazuje výsledky pomocí vertikálního výstupu. To usnadňuje čtení výsledků.

Méně než měsíc

Pokud je interval kratší než 30 dní, zůstane ve dnech.

SELECT justify_days(interval '29 days');

Výsledek (při použití vertikálního výstupu):

29 days

Včetně minut

V tomto příkladu interval zahrnuje minutovou část.

SELECT justify_days(interval '40 days 30 minutes');

Výsledek (při použití vertikálního výstupu):

1 mon 10 days 00:30:00

Takže v tomto případě skončíme tak, že se k výsledku připojí časová hodnota.


  1. Postgres je nejlepší databáze – Důvod č. 1:Vývojáři ji milují!

  2. Jak používat třídu databasehelper ve třídě asynctask pracující na jiné třídě

  3. Funkce JSON_OBJECT() v Oracle

  4. Připojte databázi v SQLite