Re: range_agg
От | Pavel Stehule |
---|---|
Тема | Re: range_agg |
Дата | |
Msg-id | CAFj8pRBraPOa6NmL39A2frz6idi3XmPbQaVaMXSqvHtZ=h_DWQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: range_agg (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: range_agg
|
Список | pgsql-hackers |
so 7. 3. 2020 v 22:20 odesílatel Tom Lane <tgl@sss.pgh.pa.us> napsal:
I wrote:
> Actually ... have you given any thought to just deciding that ranges and
> multiranges are the same type? That is, any range can now potentially
> contain multiple segments? That would eliminate a whole lot of the
> tedious infrastructure hacking involved in this patch, and let you focus
> on the actually-useful functionality.
Also, this would allow us to remove at least one ugly misfeature:
regression=# select '[1,2]'::int4range + '[3,10)'::int4range;
?column?
----------
[1,10)
(1 row)
regression=# select '[1,2]'::int4range + '[4,10)'::int4range;
ERROR: result of range union would not be contiguous
If the result of range_union can be a multirange as easily as not,
we would no longer have to throw an error here.
I think this behave is correct. Sometimes you should to get only one range - and this check is a protection against not continuous range.
if you expect multirange, then do
select '[1,2]'::int4range::multirange + '[4,10)'::int4range;
Regards
Pavel
regards, tom lane
В списке pgsql-hackers по дате отправления: