Re: Can we consider "24 Hours" for "next day" in INTERVAL datatype ?

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: Prabhat Sahu <prabhat(dot)sahu(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Can we consider "24 Hours" for "next day" in INTERVAL datatype ?
Date: 2022-03-15 07:40:12
Message-ID: d828f6f5671d4980c68c0b883b885d95e81f0f9e.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, 2022-03-15 at 12:54 +0530, Prabhat Sahu wrote:
> Kindly check the below scenario with INTERVAL datatype.
>
> postgres=# select interval '01 20:59:59' + interval '00 05:00:01' as interval;
>     interval    
> ----------------
>  1 day 26:00:00
> (1 row)
>
> Any operation with INTERVAL data, We are changing the interval values as
> "60 sec" as "next minute"
> "60 min" as "next hour"
> Similarly can't we consider "24 Hours" for "next day" ?
> Is there any specific purpose we are holding the hours as an increasing number beyond 24 hours also?
>
> But when we are dealing with TIMESTAMP with INTERVAL values it's considered the "24 Hours" for "next day".
>
> postgres=# select timestamp '01-MAR-22 20:59:59' + interval '00 05:00:01'  as interval;
>       interval      
> ---------------------
>  2022-03-02 02:00:00
> (1 row)

The case is different with days:

test=> SELECT TIMESTAMPTZ '2022-03-26 20:00:00 Europe/Vienna' + INTERVAL '12 hours' + INTERVAL '12 hours';
?column?
════════════════════════
2022-03-27 21:00:00+02
(1 row)

test=> SELECT TIMESTAMPTZ '2022-03-26 20:00:00 Europe/Vienna' + INTERVAL '1 day';
?column?
════════════════════════
2022-03-27 20:00:00+02
(1 row)

Yours,
Laurenz Albe

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Julien Rouhaud 2022-03-15 07:41:03 Re: ICU for global collation
Previous Message Bharath Rupireddy 2022-03-15 07:38:12 Re: Allow async standbys wait for sync replication