Для вычитания секунд из datetime(timestamp) в PostgreSQL мы будем использовать функцию make_interval() и другой подход с использованием оператора - и типа данных Interval. datatype. datatype. Вот примеры этих подходов. Также мы рассмотрим, как вычесть секунды из столбца datetime(timestamp) в таблице PostgreSQL.

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

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


Пример 1:

SELECT '2024-02-24 12:00:00'::timestamp - INTERVAL '30 seconds' AS new_datetime

Результат:

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

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

Пример 1:

SELECT '2024-02-24 12:00:00'::timestamp - make_interval(secs => 30) as new_datetime

Результат:


Вычитание секунд из столбца datetime(timestamp) в таблице PostgreSQL с использованием типа данных Interval:

Мы будем использовать таблицу student_detail1 в качестве примера, чтобы показать, как вычесть секунды из столбца datetime(timestamp) в таблице PostgreSQL.

student_detail1:

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

select *, birthdaytime::timestamp  - INTERVAL '30 SECONDS' as new_date from student_detail1

Результат:

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

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

select *,birthdaytime::timestamp - make_interval(secs => 30) as new_date from student_detail1

Результат: