postgresql 求两个时间差 (相差天数,timestamp类型)

rt
2025-02-02 16:08:12
推荐回答(1个)
回答1:

如果是按相差24小时就算1天的话,直接用两个timestamp值相减得到一个interval值,然后获得此interval值的天数部分即可,如下:

select date_part('day', '2015-01-15 17:05'::timestamp - '2013-01-14 16:05'::timestamp);

如果要按timestamp的日期部分做相差天数,则可以转成date值,然后直接相减,如下:

select ('2015-01-15 17:05'::timestamp)::date - ('2015-01-14 19:05'::timestamp)::date;