在postgresql select中,将timestamp列添加到additional_days列

时间:2014-03-14 20:16:21

标签: sql postgresql datetime

在一列中,我在postgresql中将create_dtm保存为时间戳。另一列是整数wait_days。当我从数据库中提取一行时,我想检索create_dtm + wait_days作为时间戳。

似乎我应该能够做到这一点......我是否必须在我的应用程序代码中执行此操作?

我的非工作样本如下:

select name, title, create_dtm + wait_days

2 个答案:

答案 0 :(得分:2)

您可以将整数添加到date,但不能添加到timestamp

您只能在时间戳值中添加interval,因此您需要"转换"整数值到1天的间隔:

select name, title, create_dtm + interval '1' day * wait_days
from the_table;

SQLFiddle示例:http://sqlfiddle.com/#!15/891f5/1

(下次,请发布您收到的错误消息)

答案 1 :(得分:0)

如果wait_days属于textchar类型,则无效。您需要将其转换为integer,然后此查询应该没问题:

select name, title, create_dtm + wait_days::integer