robert.kruus@gov.sk.ca writes:
> The int4range, int8range, daterange functions seem to be ignoring the 3rd
> argument which specifies the interval bounds.
> i.e.
> SELECT daterange('2010-01-01'::date, '2011-01-01'::date, '()'::text);
> daterange
> -------------------------
> [2010-01-02,2011-01-02)
It's not ignoring it. What it's doing is canonicalizing the range so that
equivalent ranges actually look the same. Note your bounds have changed.
(BTW, you misquoted the result; the upper date does not change in this
case, at least not for me.)
See the discussion of discrete vs continuous range types at
http://www.postgresql.org/docs/9.3/static/rangetypes.html#RANGETYPES-DISCRETE
regards, tom lane