Re: Why is NULL = unbounded for rangetypes? - Mailing list pgsql-general

From Jeff Davis
Subject Re: Why is NULL = unbounded for rangetypes?
Date
Msg-id 1373303775.30779.3.camel@jdavis
Whole thread Raw
In response to Why is NULL = unbounded for rangetypes?  (Andreas Joseph Krogh <andreak@officenet.no>)
Responses Re: Why is NULL = unbounded for rangetypes?
List pgsql-general
On Mon, 2013-07-08 at 10:19 +0200, Andreas Joseph Krogh wrote:
> Hi.
>
> Both of these queries return TRUE because NULL means "unmounded":
> select daterange('2013-07-01' :: DATE, null, '[]') && daterange('2013-07-04' :: DATE, '2013-07-30' :: DATE, '[]');
> select daterange(null, '2013-08-11' :: DATE, '[]') && daterange('2013-07-04' :: DATE, '2013-07-30' :: DATE, '[]');
> What is the rational behind this behavior of NULL?

It's just a convenience that passing NULL to a constructor creates an
unbounded range. The alternatives of having extra constructors for
unbounded ranges were discussed, but seemed more awkward.

Note that ranges do not allow either bound to be NULL. That would create
a lot of semantic problems.

Does that answer your question?

Regards,
    Jeff Davis




pgsql-general by date:

Previous
From: pg noob
Date:
Subject: Re: odd locking behaviour
Next
From: Joe Van Dyk
Date:
Subject: domains, case statements, functions: bug?