从时间值中减去间隔

时间:2014-06-23 12:08:51

标签: postgresql datetime

我希望在PostgreSQL中获得当前时间前1小时的时间。我怎么能这样做?

比如说,目前时间是'17:37:06',那么我希望结果输出为'16:37:06'

2 个答案:

答案 0 :(得分:7)

如果您真的只想要时间,请使用current_time current_timestampnow()也会返回日期。

select current_time - interval '1' hour

或减去1小时25分钟:

select current_time - interval '1:25'

(请注意,如果您使用小时分钟的时间间隔,则需要删除hour关键字

如果您确实希望日期成为结果的一部分,请将current_time替换为current_timestamp

答案 1 :(得分:2)

使用interval类型对date类型

进行算术运算
select now() - interval '1 hour';

可以使用像1小时半的分数

select now() - 1.5 * interval '1 hour';