Search Postgresql Archives

Re: "two time periods with only an endpoint in common do not overlap" ???

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ron <ronljohnsonjr@xxxxxxxxx> writes:
> OP refers to the OVERLAP operator (is it an operator), not the tsrange() 
> function.

Indeed.  SQL92 defines OVERLAP thus:

         6) The result of the <overlaps predicate> is the result of the
            following expression:

              ( S1 > S2 AND NOT ( S1 >= T2 AND T1 >= T2 ) )
              OR
              ( S2 > S1 AND NOT ( S2 >= T1 AND T2 >= T1 ) )
              OR
              ( S1 = S2 AND ( T1 <> T2 OR T1 = T2 ) )

where S1 is the smaller of the first range's endpoints and T1 is the
larger; similarly S2/T2 are the smaller/larger of the second range's.
(I gloss over the question of what to do with NULL endpoints; but the
apparent redundancies in the above seem to be meant to define what
happens with NULLs.)

I submit that our description using half-open ranges is clearer than
the spec's.  Nonetheless, they're equivalent.

			regards, tom lane





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux