Olá pessoal, boa tarde!

> 1º regra - A solução não poderá ESCREVER no banco.
Ok.

> 2º regra - O count não é útil aqui, pois não quero UM VALOR TOTAL, quero
> que exista uma contagem referente a linha, ex:
Ok.

> 3º regra - Não vale usar um número sequêncial de UMA TABELA, pois eu
> acesso VARIAS tabelas, pegando ou não o resultado de alguma ou outra.
Ok.

> 4º O resultado deve então ser uma QUERY, ou um RECURSO de
> query (função), que NÃO grave nada do banco, NÃO use o COUNT, nem
> UMA PRIMARIA(serial) de alguma tabela envolvida na busca.
Ok.

http://www.postgresql.org/docs/8.1/static/functions-srf.html

=# select generate_series(1, 1000) as contador, f.nome, u.login from
funcionario.funcionario f, seg_usuario u where u.login =
f.correio_eletronico;

O único "problema" é o segundo parâmetro, onde você deve indicar até
onde seu contador vai. Por exemplo, se em uma consulta que irá
retornar 10 linhas você usar generate_series(1, 5) sua lista ficará
assim:

1 | A
2 | B
3 | C
4 | D
5 | E
1 | F
2 | G
3 | H
4 | I
5 | J

ou seja, o contador volta para a posição de "start", que é 1.

Espero ter ajudado.

Até logo.

--

Arthur César Oreana

aoreana (at) gmail (dot) com - Linux User #252814
http://www.postgresql.org/ - http://www.postgresql.org.br/
http://community.java.net/ - http://orlandiajug.dev.java.net/
http://jroller.com/page/aoreana/ - http://advogato.org/person/aoreana/
_______________________________________________
Grupo de Usuários do PostgreSQL no Brasil
http://www.postgresql.org.br

Responder a