2013/2/18 Joel Benelli <[email protected]>

> Pessoal não estou encontrando alternativa para a query abaixo:
>
> select cx.cdcaixa, cx.dtturno, cx.cdempresa
>    from caixa cx
> where cx.cdcaixacancelado =
>          (select max(cx1.codcaixa) from caixa cx1 where cx1.cdempresa =
> cx.cdempresa)
>
> Como estou lendo a mesma tabela duas vezes (uma no escopo principal e
> outra na cláusula where) e a resolução de uma das leituras depende da
> outra, fatalmente uma delas fará seq scan. Esta é uma prática constante no
> aplicativo que comecei a analisar e no Postgre fica lento.
>
>
Precisamos mais informações para poder ajudá-lo:
- estrutura da tabela
- plano de execução (saída do EXPLAIN ANALYZE)


Att,

-- 
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a