我在PostgreSQL表中有两个Timestamp
列(例如2019-07-12 07:59:59
)。我需要减去两列,然后将(HH:MM:SS
)值保存为新名称?
答案 0 :(得分:2)
不需要计算历元。减去时间戳记可以直接转换一个时间间隔:
with timestamps (tsa, tsb) as
(values ('2020-01-15T06:15:00'::timestamp, '2020-01-15T18:15:00'::timestamp))
select to_char(tsb-tsa,'hh24:mi:ss') from timestamps;
答案 1 :(得分:0)
您将两者结合在一起: 首先获取以秒为单位的差异,然后以hhmmss转换秒:
SELECT TO_CHAR((EXTRACT(EPOCH
FROM (timestamp_B - timestamp_A)) || ' second')::interval, 'HH24:MI:SS')