From: | Dino Maric <dinom(at)hey(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-bugs(at)lists(dot)postgresql(dot)org |
Subject: | Re: Confusion about the range types |
Date: | 2023-01-08 10:13:57 |
Message-ID: | 276a2c3825d677698e392f92d45893d1dc93d797@hey.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Thanks Tom, I understand.
But still it does feel a bit strange that value I'm storing is different
when presenting.
For example I want to use range in healthcare app and value user stores
it must be the same when presenting.
So in that case it is [7-8] and [7-9) are not the same thing :)
On January 7, 2023, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Dino Maric <dinom(at)hey(dot)com> writes:
> > When I insert range like this:
> > INSERT INTO public.tests
> > VALUES (int4range(7,8,'[]'))
> > After when querying table my return value for this column is not
> [7,8]
> > but it is [7,9).
> > I found this behaviour confusing, because I want to insert 7-8
> ranges
> > (including upper value) and then present that range to a user.
>
> This is the effect of canonicalization, as explained here:
>
> https://www.postgresql.org/docs/current/rangetypes.html#RANGETYPES-
> DISCRETE
>
> If you don't like it you can make a range type with a different
> canonicalization function, or no such function, but that might
> have odd effects on the behavior of range comparison operators.
>
> regards, tom lane
--
Sent with HEY <https://hey.com/sent> — Email as it should be
From | Date | Subject | |
---|---|---|---|
Next Message | Alexander Korotkov | 2023-01-08 11:19:30 | Re: Bug in jsonb_path_exists (maybe _match) one-element scalar/variable jsonpath handling |
Previous Message | Tom Lane | 2023-01-07 16:13:06 | Re: Confusion about the range types |