On Mon, May 4, 2015 at 11:06 PM, Douglas Fabiano Specht <
[email protected]> wrote:
>
>
> retornando o erro:
> ERROR: query has no destination for result data
> HINT: If you want to discard the results of a SELECT, use PERFORM instead.
> CONTEXT: PL/pgSQL function get_historico_mensagem(integer,character
> varying) line 11 at SQL statement
>
>
>
> CREATE OR REPLACE FUNCTION public.get_historico_mail(
> ...
> SELECT row_to_json(r)
> ...
>
O problema é que você executa essa consulta e não usa o retorno desta em
nenhum lugar. Além disso, sua função não faz retorno algum. Se você quiser
retornar o resultado do row_to_json, você deve salvar numa variável (usando
o INTO) e retorná-la, algo como:
DECLARE
ret json;
...
-- Executa a query e salva o resultado em "ret":
SELECT row_to_json(r) INTO ret
FROM ... <resto do SELECT>
-- Retorna a variável "ret" na função:
RETURN ret;
...
Atenciosamente,
--
Matheus de Oliveira
Analista de Banco de Dados
Dextra Sistemas - MPS.Br nível F!
www.dextra.com.br/postgres
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral