Для того чтобы вычесть месяц из текущей даты в PostgreSQL, мы будем использовать три подхода: один – с помощью оператора -, другой – с помощью make_interval() и третий – с помощью типа данных INTERVAL. Ниже приведены примеры этих трех подходов. Также мы рассмотрим, как вычесть месяц из столбца текущей даты/времени в таблице PostgreSQL.

Вычитание месяцев из текущей даты в PostgreSQL с использованием типа данных INTERVAL:

Мы будем использовать тип данных INTERVAL для вычитания месяцев из текущей даты в PostgreSQL. Когда мы вычитаем месяцы из текущей даты, используя тип данных INTERVAL, вывод будет в формате datetime(timestamp). В приведенном ниже примере мы вычитаем 2 месяца из текущей даты, используя тип данных Interval.


Пример 1:

SELECT CURRENT_DATE - INTERVAL '2 MONTHS' as new_date

Результат:

Вычитание месяцев из текущей даты в PostgreSQL с помощью функции make_interval():

Мы будем использовать функцию make_interval() для вычитания месяцев из текущей даты в PostgreSQL. Когда мы вычитаем месяцы из текущей даты с помощью функции make_interval(), вывод будет в формате datetime(timestamp). В приведенном ниже примере мы вычли 2 месяца из текущей даты.

Пример 1:

SELECT CURRENT_DATE::date - make_interval(months => 2) as new_date

Результат:

Вычитание месяцев из текущей даты в PostgreSQL (округленно):

Для вычитания месяцев из текущей даты в PostgreSQL мы будем использовать ключевое слово CURRENT_DATE с символом вычитания (-). В результате из текущей даты будет вычтено 60 дней, что составляет 2 месяца, как показано ниже.

Пример 1:

SELECT  CURRENT_DATE - 60 AS new_date;

Результат:


Вычитание месяцев из столбца текущей даты в таблице PostgreSQL с использованием типа данных Interval:

Мы будем использовать таблицу fruits для нашего примера, чтобы показать, как вычесть месяцы из столбца текущей даты в таблице PostgreSQL.

fruits:

Мы вычли 2 месяца из столбца текущей даты, используя тип данных INTERVAL в PostgreSQL, и создали новый столбец с именем new_date, как показано ниже.

select *,current_date, Current_date::timestamp  - INTERVAL '2 MONTHS' as new_date from fruits

Результат:

Вычитание месяцев из столбца текущей даты в таблице PostgreSQL с помощью функции make_interval():

Мы вычли 2 месяца из столбца текущей даты с помощью функции make_interval() в PostgreSQL и создали новый столбец с именем new_date, как показано ниже.

select *,current_date, Current_date::timestamp  - make_interval(months => 2) as new_date from fruits

Результат:

Вычитание MONTHS из столбца текущей даты в таблице PostgreSQL с помощью оператора вычитания (-):

В этом способе мы вычли 61 день из столбца текущей даты, используя простой оператор вычитания (-) в postgresql, и создали новый столбец с именем new_date, как показано ниже.

SELECT *,current_date, current_date- 61 as new_date from fruits

Результат: