问题描述
如何获取Postgres中的日期时间差异
我正在使用以下语法
DATE_PART('hour',A_column::timestamp-B_column::timestamp )
我想要这样的输出:
如果A_column=2020-05-20 00:00:00
和B_column=2020-05-15 00:00:00
我希望获得72(小时)。
是否有可能在第一个周末跳过周末(星期六和星期日),这意味着将结果设为72小时(不包括周末时间)
如果A_column=2020-08-15 12:00:00
和B_column=2020-08-15 00:00:00
我想得到12(以小时为单位)。
解决方法
您可以这样写:
select extract(epoch from a_column::timestamp - b_column::timestamp) / 60 / 60
from mytable
合理的价格:将两个时间戳相减得到一个间隔;然后可以将其设置为几秒钟,然后进行算术运算以将其转换为小时。