Re: "two time periods with only an endpoint in common do not overlap" ??? - Mailing list pgsql-general

From Ron
Subject Re: "two time periods with only an endpoint in common do not overlap" ???
Date
Msg-id bb79ff9e-acee-c73d-3379-bea13db377b9@gmail.com
Whole thread Raw
In response to Re: "two time periods with only an endpoint in common do not overlap" ???  (Adrian Klaver <adrian.klaver@aklaver.com>)
Responses Re: "two time periods with only an endpoint in common do not overlap" ???
Re: "two time periods with only an endpoint in common do not overlap" ???
List pgsql-general
On 10/15/21 11:08 PM, Adrian Klaver wrote:
> On 10/15/21 19:42, Ron wrote:
>>
>> The numeric ranges 0-10 and 10-19 overlap, just as the time ranges 
>> 00:01:00-00:00:02:00 overlaps 00:02:00-00:03:00.
>>
>> *It's the programmer's responsibility* to say what s/he really means, not 
>> for "the system" to make that choice.
>>
>
> It is the programmers choice:
>
> --The canonical form.
> --No overlap
> select int4range(1,3), int4range(3, 5);
>  int4range | int4range
> -----------+-----------
>  [1,3)     | [3,5)
>
>  select int4range(1,3) && int4range(3, 5);
>  ?column?
> ----------
>  f
>
> --Making it overlap
> select int4range(1,3, '[]'), int4range(3, 5, '[]');
>  int4range | int4range
> -----------+-----------
>  [1,4)     | [3,6)
>
>  select int4range(1,3, '[]') && int4range(3, 5, '[]');
>  ?column?
> ----------
>  t
>
>
> There is no straight time range, you would have to use tsrange or 
> tstzrange. The principle still holds though you can make ranges overlap or 
> not depending on '[)' or '[]'.

OP refers to the OVERLAP operator (is it an operator), not the tsrange() 
function.

-- 
Angular momentum makes the world go 'round.



pgsql-general by date:

Previous
From: Ron
Date:
Subject: Re: "two time periods with only an endpoint in common do not overlap" ???
Next
From: Tom Lane
Date:
Subject: Re: "two time periods with only an endpoint in common do not overlap" ???