两个日期之间的最大间隔相同的表

时间:2013-01-18 09:27:52

标签: postgresql date intervals

我经常搜索,再次尝试和尝试,我真的不知道如何解决我的问题,可能是因为我不知道SQL需求如何工作并对待表格。

这是我的问题。我有一个包含列的表(id,sentdate,data)。其中一列是date(sentdate),例如“2011-03-21 05:17:48”。我需要的是比较第一个日期和第二个日期,然后获得天数的差异,然后获得第二个和第三个日期,并获得一天的差异...依此类推。最后,我希望获得开始日期和结束日期的最高时间间隔。我正在使用PostgreSQL

1 个答案:

答案 0 :(得分:3)

如果您想要整数天的差异:

select
    sentdate, lag(sentdate) over(order by sentdate) previous_sentdate,
    sentdate::date - lag(sentdate) over(order by sentdate) days
from t
order by sentdate