Andrus wrote:
I thought the suggested solution was to use infinity, hence the requirement to cast to timestamps.
That'd mean something along the lines of:

 where  (a::timestamp, coalesce(b, 'infinity')::timestamp) overlaps
 (c::timestamp, coalesce(d, 'infinity')::timestamp)

select (date'20060101'::timestamp, coalesce(date'20060102'::timestamp, 'infinity')) overlaps
 (date'20060102', coalesce(date'20060103'::timestamp, 'infinity'))

returns false but since date'20060102' is overlapping it must return true.
So it seems that it is not possible to use timestamps and infinity.

Not true, as the above query reads:

 select (date'20060101'::timestamp, date'20060102'::timestamp)
 overlaps
 (date'20060102', date'20060103'::timestamp)

Which doesn't overlap.

What you meant to test is:

 select (date '20060101'::timestamp,
    coalesce(NULL, 'infinity'::timestamp))
 overlaps
 (date '20060102'::timestamp,
    coalesce(NULL, 'infinity'::timestamp))

Which returns true.

--
Alban Hertroys
[EMAIL PROTECTED]

magproductions b.v.

T: ++31(0)534346874
F: ++31(0)534346876
M:
I: www.magproductions.nl
A: Postbus 416
   7500 AK Enschede

// Integrate Your World //

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

              http://archives.postgresql.org/

Reply via email to