Re: range_agg

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: range_agg
Дата
Msg-id CAFj8pRDYkdi4vDmKTAL-7dQqX5CbxHzAzkn=VH=ojZc9F+mbcw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: range_agg  (Pavel Stehule <pavel.stehule@gmail.com>)
Ответы Re: range_agg
Список pgsql-hackers


so 18. 1. 2020 v 17:35 odesílatel Pavel Stehule <pavel.stehule@gmail.com> napsal:


so 18. 1. 2020 v 17:07 odesílatel Paul A Jungwirth <pj@illuminatedcomputing.com> napsal:
On Sat, Jan 18, 2020 at 7:20 AM Pavel Stehule <pavel.stehule@gmail.com> wrote:
> Can be nice to have a polymorphic function
>
> multirange(anymultirange, anyrange) returns anymultirange. This functions should to do multirange from $2 to type $1
>
> It can enhance to using polymorphic types and simplify casting.

Thanks for taking another look! I actually have that already but it is
named anymultirange:

regression=# select anymultirange(int4range(1,2));
 anymultirange
---------------
 {[1,2)}
(1 row)

Will that work for you?

It's better than I though


I think I only wrote that to satisfy some requirement of having an
anymultirange type, but I agree it could be useful. (I even used it in
the regress tests.) Maybe it's worth documenting too?

Now, I think so name "anymultirange" is not good. Maybe better name is just "multirange"



yes


> when I tried to write this function in plpgsql I got
>
> create or replace function multirange(anymultirange, anyrange) returns anymultirange as $$
> begin
>   execute format('select $2::%I', pg_typeof($1)) into $1;
>   return $1;
> end;
> $$ language plpgsql immutable strict;
>
> ERROR:  unrecognized typtype: 109
> CONTEXT:  compilation of PL/pgSQL function "multirange" near line 1

Hmm, I'll add a test for that and see if I can find the problem.

ok


Thanks!
Paul

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Richard Guo
Дата:
Сообщение: Re: A problem about partitionwise join
Следующее
От: Richard Guo
Дата:
Сообщение: Re: Parallel grouping sets