在PostgreSQL中找出时间戳之间的差异(以秒为单位)

时间:2012-12-24 11:40:02

标签: postgresql

我在PostgreSQL 8.3中有一个包含2 timestamp列的表格。我想在几秒钟内得到这些timestamps之间的差异。你能帮我解决一下这个问题吗?

TableA
(
  timestamp_A timestamp,
  timestamp_B timestamp
)

我需要在几秒钟内获得(timestamo_B - timestamp_A)之类的内容(不仅仅是秒之间的差异,还应包括小时,分钟等)

3 个答案:

答案 0 :(得分:174)

尝试:

SELECT EXTRACT(EPOCH FROM (timestamp_B - timestamp_A))
FROM TableA

此处的详细信息:EXTRACT

答案 1 :(得分:21)

select age(timestamp_A, timestamp_B)

回答伊戈尔的评论:

select age('2013-02-28 11:01:28'::timestamp, '2011-12-31 11:00'::timestamp);
              age              
-------------------------------
 1 year 1 mon 28 days 00:01:28

答案 2 :(得分:0)

ls

如果有人使用提取遇到问题。