A Nit RE overlaps

From: "Ian Harding" <ianh(at)tpchd(dot)org>
To: <pgsql-general(at)postgresql(dot)org>
Subject: A Nit RE overlaps
Date: 2002-01-09 17:35:46
Message-ID: sc3c0f5f.062@mail.tpchd.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I love overlaps() but I would love it more if it had a

overlaps(date, date, date, date) variant that would work like this:

select overlaps(
cast('01/01/2002' as date),
cast('6/1/2002' as date),
cast('6/1/2002' as date),
cast('12/31/2002' as date)
);
overlaps
----------
t
(1 row)

As it is, it returns false. To me if the first interval ends at a point in time and the other begins at the same point, they overlap. This is splitting hairs with a timestamp, but not with a date. Am I the only person who feels this way? Is there a way to use overlaps as above and make it return true?

In my twisted little world, a null date would be OK too and would indicate the beginning or end of time. i.e.

select overlaps(
cast('01/01/2002' as date),
cast(null as date),
cast('6/1/2002' as date),
cast('12/31/2002' as date)
);

would return

overlaps
----------
t
(1 row)

since the first interval goes on forever. I know that is a bad use of nulls in terms of its meaning as 'unknown' so I guess that's a hack I will have to continue doing myself. But I am still interested in knowing if there is any interest in a version of overlaps that considers events that occur at the same point in time to be overlapping.

Ian A. Harding
Programmer/Analyst II
Tacoma-Pierce County Health Department
(253) 798-3549
mailto: iharding(at)tpchd(dot)org

Browse pgsql-general by date

  From Date Subject
Next Message Peter E. Chen 2002-01-09 18:11:13 Question regarding VACUUM ANALYZE ERROR . . .
Previous Message Command Prompt, Inc. 2002-01-09 17:25:19 Re: Unable to start