Segate, ambas dão o mesmo resultado, mas o select dentro da clausula "not
in()" consulta colunas diferentes o custo vai ser diferente mesmo...
Eu não utilizo count(*), sempre uso count() de uma coluna que retorna da
consulta.
Adriano


2008/6/25 Mr J.L. <[EMAIL PROTECTED]>:

> Pessoal
>  Tenho uma query laza... em meu sistema que faz o seguinte:
>
> select
> count(*) as tam, max(connumero) as connumero
> from contrato
> inner join veiculo on conveioid=veioid
> inner join clientes cl on conclioid=cl.clioid
> where veichassi='9BFXCE2U98BB06345'
> and conclioid not in ( select clioid from clientes where (case when
> cl.clitipo = 'F' then clino_cpf else clino_cgc end) = '57468923' );
> --"Aggregate  (cost=100002362.10..100002362.11 rows=1 width=4)"
>
>
> select
> count(*) as tam, max(connumero) as connumero
> from contrato
> inner join veiculo on conveioid=veioid
> inner join clientes cl on conclioid=cl.clioid
> where veichassi='9BFXCE2U98BB06345'
> and conclioid not in ( select clioid from clientes where (clino_cpf =
> '57468922' or clino_cgc ='57468922') );
> "Aggregate  (cost=15392.80..15392.81 rows=1 width=4)"
>
> Eu testei algumas opcoes eu nao encontrei diferenca (a nao ser o custo) eu
> gostaria de confirmar essa informacoa c/ vcs. tipo, essas duas consultas
> fazem a mesma coisa, produzem o mesmo resultado.
>
> Obrigado.
>
>
>      Novos endereços, o Yahoo! que você conhece. Crie um email novo com a
> sua cara @ymail.com ou @rocketmail.com.
> http://br.new.mail.yahoo.com/addresses
> _______________________________________________
> 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