PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как justify_days() работи в PostgreSQL

В PostgreSQL, justify_days() функцията ви позволява да регулирате интервала стойност, така че 30-дневните периоди от време да се представят като месеци.

Например, ако имате интервал от, да речем, 30 дни , justify_days() ще го върне като 1 мес. .

Синтаксис

Функцията има следния синтаксис:

justify_days(interval)

Където interval е интервалът, който искате да бъде представен в месеци.

Пример

Ето основен пример за демонстрация.

SELECT justify_days(interval '30 days');

Резултат:

1 mon

Частични месеци

Ето пример за това какво се случва, когато интервалът ви не е точно кратен на 30 дни.

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

Резултат (с помощта на вертикален изход):

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

В този пример използвах \x за да преминете към разширен дисплей, който показва резултатите с помощта на вертикален изход. Това прави малко по-лесно четенето на резултатите.

По-малко от месец

Ако интервалът е по-малък от 30 дни, той ще остане в дни.

SELECT justify_days(interval '29 days');

Резултат (с помощта на вертикален изход):

29 days

Включително минути

В този пример интервалът включва част от минути.

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

Резултат (с помощта на вертикален изход):

1 mon 10 days 00:30:00

Така че в този случай получаваме времева стойност, която се добавя към резултата.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да използвате Joda-Time с java.sql.Timestamp

  2. Как да създадете индекс за елементи от масив в PostgreSQL?

  3. Как да променя формата на датата в Postgres?

  4. Бързо намиране на подобни низове с PostgreSQL

  5. Какво е сканиране на растерна памет в план за заявка?