【发布时间】:2011-08-20 07:43:36
【问题描述】:
如何获得日期为 30 天后的时间戳?
我尝试过类似 now() + integer '30'... 但没用。
我正在运行 Postgres 8。
有什么想法吗?
【问题讨论】:
标签: postgresql timestamp
如何获得日期为 30 天后的时间戳?
我尝试过类似 now() + integer '30'... 但没用。
我正在运行 Postgres 8。
有什么想法吗?
【问题讨论】:
标签: postgresql timestamp
试试这样的:
SELECT NOW() + '30 days'::interval
【讨论】:
interval '30 days' 也适用于as of 8.0。
now() + '30 days' 也可以,我还没有检查过早期版本。
标准的SQL表达式是
select current_timestamp + interval '30' day
在数字周围加上引号,而不是在短语周围。请参阅the earliest SQL standard 我可以在网上找到,第 91 页。PostgreSQL 比标准灵活得多,这可能是好事也可能是坏事。我支持很多不同的 dbms——灵活性对我的伤害多于它的帮助。例如,PostgreSQL 就支持这种非标准语句。
select current_timestamp + interval '1 month, 2 days, 3 hours, 2 minutes';
【讨论】: