Re: Range Types: << >> -|- ops vs empty range

Andrew Dunstan <andrew@dunslane.net>

From: Andrew Dunstan <andrew@dunslane.net>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Jeff Davis <pgsql@j-davis.com>, Erik Rijkers <er@xs4all.nl>, pgsql-hackers@postgresql.org
Date: 2011-02-11T17:53:15Z
Lists: pgsql-hackers

On 02/11/2011 12:36 PM, Robert Haas wrote:
> On Fri, Feb 11, 2011 at 12:26 PM, Jeff Davis<pgsql@j-davis.com>  wrote:
>> On Fri, 2011-02-11 at 12:03 -0500, Robert Haas wrote:
>>> For what it's worth, my completely uninformed opinion is that
>>> comparison operators shouldn't error out.  I haven't read the patch so
>>> I'm not sure what those operators are defined to do, though.
>> ">>" means "strictly right of"
>> "<<" means "strictly left of"
>> "-|-" means "adjacent" (touching but not overlapping)
>>
>> I'm open to suggestion about how those behave with empty ranges.
> Hmm, so an empty range is a range that includes nothing at all, right?
>   Not "everything in the world"?
>
> Are we sure we even want to have that concept?

I have no particular opinion on that, but if we do then ISTM all the 
above (and particularly the last) should return false if either operand 
is an empty range.

cheers

andrew