当我在 Web 上发送表单时,插入查询使用函数 now() 将当前日期保存在我的数据库中。
现在,我正在尝试以分钟格式获取此列,以计算我需要的其他想法,但我不知道该怎么做。
例如,我有这个:
“2013-05-08 08:30:00”
我想要这个(现在是 8.50):
"20" <- 以分钟为单位
谢谢
当我在 Web 上发送表单时,插入查询使用函数 now() 将当前日期保存在我的数据库中。
现在,我正在尝试以分钟格式获取此列,以计算我需要的其他想法,但我不知道该怎么做。
例如,我有这个:
“2013-05-08 08:30:00”
我想要这个(现在是 8.50):
"20" <- 以分钟为单位
谢谢
好的,假设您有一个带有时间戳的表:
CREATE TABLE ex (t timestamp);
INSERT INTO ex VALUES ('2013-05-08 8:30'::timestamp);
并且您想要列t
和之间的分钟差now()
。您可以使用以下extract
功能获得:
SELECT extract(epoch from (now() - ex.t)) / 60 FROM ex;
epoch
是date
和timestamp
类型的“纪元”中的秒数,但不仅仅是interval
类型间隔中的秒数。通过将它除以 60,你得到了你想要的(如果你想要整数分钟就trunc
可以了。)