Re: Confusion about the range types

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Dino Maric <dinom(at)hey(dot)com>
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: Confusion about the range types
Date: 2023-01-07 16:13:06
Message-ID: 3452152.1673107986@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

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

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Dino Maric 2023-01-08 10:13:57 Re: Confusion about the range types
Previous Message Dino Maric 2023-01-07 15:17:19 Confusion about the range types