Ответы:
Postgres имеет очень гибкую обработку массивов и составных типов . Это может быть то, что вы пытаетесь сделать:
create type my_type as (val1 integer, val2 integer);
create function my_function(arr my_type[]) returns text language plpgsql as $$ begin return arr::text; end;$$;
select my_function(array[row(1,2),row(3,4)]::my_type[]);
| моя_функция | | : ---------------- | | {"(1,2)", "(3,4)"} |
dbfiddle здесь