On Fri, Jun 19, 2015 at 11:28 AM, Matheus Saraiva <[email protected]
> wrote:
> oldacessos := SELECT array_agg(modulo_acessos,liberacao_acessos) FROM
> "Acessos" WHERE usuario_acessos = 1;
>
>
> Essa atribuição do select à variável oldacessos, no meu entendimento,
> não daria certo pois o retorno de array_agg nesse caso seria um array de
> inteiros de duas dimensões.
> Como fazer para que array_agg retorne um array de tipoacesso?
>
Basta converter usando um CAST, primeiro, ao invés de duas colunas, você
deve usar o "row constructor":
ROW(coluna1, coluna2)
ou, simplesmente
(coluna1, coluna2)
Depois fazer o cast:
CAST(ROW(coluna1, coluna2) AS seu_tipo)
Ajustar ao caso específico fica como exercício ao OP.
Atenciosamente,
--
Matheus de Oliveira
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral