Em 25 de outubro de 2011 14:34, Marcone <[email protected]> escreveu:

> Prezado Pedro,
>
> Consegui simular aqui seu "problema".
>
> Pelo que eu pude notar nos testes que eu fiz o postgres faz uma
> chamada para a função para cada declaração de chamada. Por exemplo:
>
> select teste_stable(10), teste_stable(10); -- serão executadas duas
> vezes...
> select *, teste_stable(10) from tabela; -- Será executada uma vez não
> importa a quantidade de linhas na tabela;
>
> Nesse ultimo caso a chamada se repetiu para funções STABLE, mas uma
> única vez para IMMUTABLEs.
>
>
Mas é no primeiro caso que tenho problema. Achei que por ser STABLE ela
seria executada somente uma vez...iria guardar como se fosse um cache o
resultado da função. Tenta simular com o exemplo do OFFSET 0 que postei
acima (é como resolvi meu problema temporariamente). Daquela forma, ela será
executada somente 1x. Muito estranho...

-- 
Pedro Ivo Bispo de França
X-Brain - Desenvolvimento de Sistemas Ltda
Contato: +55 43 3304-2204 | +55 43 9608-3678
Avenida Tiradentes, 501 Sala 702 Torre 1 - Jd. Shangrilá
Londrina - Paraná - 86070-545
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a