Bom dia amigos, sou iniciante em banco de dados e estou com a seguinte situação:
Preciso fazer uma consulta em um banco postgres, retornando todos os valores da coluna email da tabela pessoa de todos os schemas.
Segue abaixo function que implementei porém não consigo que me retorne todos os valores e sim somente o útlimo.
create or replace function do_something_with_all_these_tables(tablename text)
returns record language plpgsql
as $$
declare
schemaname text;
rec record;
begin
for schemaname in
select n.nspname
from pg_class c
join pg_namespace n on n.oid = c.relnamespace
where c.relkind = 'r' and c.relname = tablename
loop
execute format(
'select email from %s.%s',
schemaname, tablename) into rec;
end loop;
return rec;
end $$;
select do_something_with_all_these_tables('pessoa');
Alguém saberia dizer como pode ser feito esse retorno de todos os registros?
Atenciosamente,