DATEADD эквивалент в PostgreSQL
Есть ли эквивалент в этой команде T-SQL в PostgreSQL?
select dateadd(hh,duration_in_hours,start_date) as end_date
Я нашел только ключевое слово интервал с последующей строкой, но эта ужасная конструкция возвращает синтаксическую ошибку:
select start_date + interval cast(duration_in_hours as varchar) || ' hours'
Он допускает только строковую константу после ключевого слова "interval ". Я уверен, что в pgsql должна быть какая-то похожая функция, но я не могу ее найти.
1 ответ
Решение
Вы можете сделать это так:
select start_date + (duration_in_hours * interval '1 hour') from your_table
Посмотрите этот пример SQL Fiddle
У Postgres нет date_add
функция или любой другой эквивалент - способ манипулировать датами с помощью +
оператор с interval
значение, как вы упомянули.