Как реализовать add_months в PostgreSQL?

Вопрос: Как реализовать add_months в PostgreSQL? Подобно оракулу ADD_MONTHS возвращает дату. Ex. ADD_MONTHS (hire_date, 1) Лучший ответ: использование hire_date + interval '1 month' это вернет ровно один месяц, добавленный в rent_date. Дополнительные сведения о функциях даты и времени в postgre Функция времени по времени Ответ №1 В PostgreSQL вы можете создать функцию для выполнения задания

Вопрос:

Как реализовать add_months в PostgreSQL? Подобно оракулу ADD_MONTHS возвращает дату. Ex. ADD_MONTHS (hire_date, 1)

Лучший ответ:

использование

hire_date + interval ‘1 month’

это вернет ровно один месяц, добавленный в rent_date.

Дополнительные сведения о функциях даты и времени в postgre Функция времени по времени

Ответ №1

В PostgreSQL вы можете создать функцию для выполнения задания

create or replace function ADD_MONTHS(var_dte date,cnt int) returns setof date as $$ declare qry text; begin qry = format( ‘select (»%s»::date + interval »%s»)::date’,var_dte,cnt||’ month’) ; RETURN QUERY EXECUTE qry; end $$ language plpgsql

и вызовите эту функцию

select ADD_MONTHS(‘2015-11-27’,1)

Результат:

add_months date ———- 2015-12-27

в твоем случае

select hire_date ,ADD_MONTHS(hire_date,1) from table_name Ответ №2CREATE FUNCTION add_months(start DATE, months INT) RETURNS DATE AS $$ SELECT (start + (months || ‘ months’)::INTERVAL)::DATE $$ LANGUAGE sql IMMUTABLE

Оцените статью
Добавить комментарий