考虑一个包含两个字段的表:一个被称为creation_time
的时间戳和一个被称为expiration_time_seconds
的整数秒。因此,
SELECT creation_time, expiration_time_seconds FROM items;
给出:
creation_time | expiration_time_seconds
----------------------------+-------------------------
2014-11-18 05:38:05.368598 | 3600
2014-11-19 21:38:10.380777 | 2592000
2014-11-19 21:41:28.152839 | 3600
2014-11-18 17:15:11.501205 | 3600
2014-11-19 21:43:38.815154 | 3600
...
如何将到期时间添加到创建时间以获取到期时间?
从常量文本创建间隔很简单:
SELECT creation_time+interval '3600 seconds' FROM question;
给出了:
?column?
----------------------------
2014-11-18 06:38:05.368598
2014-11-19 22:38:10.380777
2014-11-19 22:41:28.152839
...
但我没有使用自定义文本或整数作为间隔。
答案 0 :(得分:2)
使用expiration_time_seconds
列乘以恒定间隔:
SELECT creation_time+interval '1 second'*expiration_time_seconds FROM items;
信用:Re: Create interval using column value?,PostgreSQL论坛