Для того чтобы вычесть недели из даты в PostgreSQL, мы будем использовать два подхода: один с помощью оператора -, а другой с помощью типа данных Interval. Здесь приведены примеры обоих подходов. Также мы рассмотрим, как вычесть недели из столбца даты в таблице PostgreSQL.

Вычитание недель из даты в PostgreSQL с использованием типа данных INTERVAL:

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


Пример 1:

SELECT '2024-02-24'::date - INTERVAL '1 Weeks' as new_date

Результат:

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

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

Пример 1:

SELECT '2024-02-24'::date - make_interval(weeks => 1) as new_date

Результат:

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

Как уже говорилось, это окольный путь. В приведенном ниже примере мы использовали простое вычитание для вычитания недель из даты в PostgreSQL. В приведенном ниже примере мы вычли из даты 7 дней (что составляет 1 неделю).

Пример 1:

SELECT '2024-02-24'::date - 7 as new_date

Результат:


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

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

student_detail1:

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

select *, birthdaytime::timestamp  - INTERVAL '2 WEEKS' as new_date from student_detail1

Результат:

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

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

select *,birthdaytime - make_interval(weeks => 2) as new_date from student_detail1

Результат:

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

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

SELECT *, birthdaytime::date - 14 as new_date from student_detail1

Результат: