boa Marcone, matou a charada. Teve praticamente o mesmo desempenho que
informar constantes e a mesma estratégia matou outras queries com problema
similar.

muito obrigado.

Em 19 de fevereiro de 2013 09:47, Marcone <[email protected]> escreveu:

> Em 19 de fevereiro de 2013 08:34, Joel Benelli
> <[email protected]> escreveu:
> > bom dia Fabrizio, o problema está na subquery do where, caso eu altere a
> > condição cruzada (CX1.CODHOTEL = CX.CODHOTEL) para uma constante
> > (CX1.CODHOTEL = 1) o tempo e o custo caem drasticamente.
>
> Se eu entendi bem... creio q a query abaixa lhe atenda.
>
> Faça um teste, por favor:
>
> SELECT
>   CX.CODCAIXA , CX.DATATURNO
> FROM
>   CAIXA CX
> join (
>         select CODHOTEL,
>                         Max(CODCAIXA) max_caixa
>         from CAIXA
>         group by CODHOTEL
> ) cx_max
>   on cx_max.CODHOTEL = CX.CODHOTEL
>         and cx_max.max_caixa = cx.CODCAIXA;
>
> --
> Marcone Peres - DBA
> http://www.linkedin.com/in/marconeperes
> @marconeperes
> (61) 8146-0028
> _______________________________________________
> 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