Em 27/05/2013 15:53, "Sérgio Antônio dos Santos" <
[email protected]> escreveu:
>
> Oi pessoal,
>
> em uma função, estou acostumado a usar o tipo RECORD para percorrer, com
um loop, as linhas retornadas da consulta. Por exemplo:
>
> ....
> DECLARE
>    rs RECORD;
> ...
> FOR rs IN
>     select * from tabela where...
> loop
> ...
> end loop;
>
> no entanto, quero pegar dados apenas das colunas de uma consulta que vai
retornar uma única linha, por exemplo:
>

Você pode usar a cláusula INTO.

> Por exemplo:
>
> ....
> DECLARE
>    linha tabela%rowtype;
> ...
> select uf, cidade from tabela join tabela2 using(codcliente) where
codcliente = 1;
> ...
>

DECLARE
    linha RECORD;
...

select uf, cidade
INTO linha
from tabela join tabela2 using(codcliente) where codcliente = 1;

> desta forma eu poderia pegar a uf da seguinte forma: linha.uf

Da forma que passei vai conseguir.

> Pesquisando na documentação do postgres encontrei o tipo rowtype. Só que
já fiz vários teste e ainda não consegui sucesso.
>
> Desde já, agradeço a atenção.
> Abraço a todos.
>
>
>
> Sérgio Antônio dos Santos
> Bacharel em Sistemas de Informação
> flavors.me/serginhosant
>
> -----------
> "Não tenho medo do grito dos violentos, dos corruptos, dos desonestos,
dos sem-caráter, dos sem-ética. Tenho medo é do silêncio dos bons."
>
> Marthin Luther King, pastor negro americano assassinado em 1963.
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a