Re: [firebase-br] O que é mais rápido?

Eduardo Jedliczka eduardo em gerasoft.com.br
Sex Jun 10 16:32:18 -03 2005


Bom, cada caso é um caso, por isto vale a pena testar o sistema com
"dados"...

Em alguns casos, o exist vai ser muito mais rápido do que o left join! Em
outros casos, vai ser mais lento. Mas certamente qualquer um dos dois será
muito mais rápido do que o "IN"...

Mas sinceramente, veja se o resultset deste select está certo... ele pode
estar "errado"...

[s]

==========================
Eduardo Jedliczka
Gerasoft Informática
Apucarana - Pr
==========================

----- Original Message ----- 
From: "Francisco Thiago" <jeandeadlucky em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Friday, June 10, 2005 3:59 PM
Subject: Re: [firebase-br] O que é mais rápido?


> Kra, sabe quando você olha um código e diz: "Idiota, pq vc não pensou
nisso
> antes?"
> Não sabe? Eu acabei de descobrir :D
>
> Puts, esse ae foi do 200 da sequencia 2,10,12,16,17,18
>
> Continua usando o mesmo plano, mas pelo join, acredito que ficará ainda
mais
> rápido, são menos registros para ele filtrar
>
> Obrigado :D!
>
>
> Francisco Thiago de Almeida
> Enter&Plug Informática
> Divisão: Desenvolvimento e Banco de dados
> MSN: thiago em enterplug.com.br
> Skype: enterplug_thiago
>
> ----- Original Message ----- 
> From: "Eduardo Jedliczka" <eduardo em gerasoft.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Friday, June 10, 2005 3:49 PM
> Subject: Re: [firebase-br] O que é mais rápido?
>
>
>
> Eu não testei, mas dá uma olhada aí...
>
> select CCLI_COD
>       , CCLI_NOME
>       , CCLI_ENDERECO
>       , CCLI_CIDADE
>       , CCLI_CEP
>       , CCLI_FONE1
>       , CCLI_FONE2
>       , CCLI_INSCR_RG
>       , CCLI_CNPJ_CPF
>  from CAD_CLIENTE
> left outer join cad_vendas on cad_vendas.cven_data_venda > :dataini
>                and cad_vendas.ccli_codigo = cad_Cliente.ccli_cod
> where cad_vendas.ccli_codigo is null
>
> [s]
>
> ==========================
> Eduardo Jedliczka
> Gerasoft Informática
> Apucarana - Pr
> ==========================
>
> ----- Original Message ----- 
> From: "Francisco Thiago" <jeandeadlucky em yahoo.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Friday, June 10, 2005 3:44 PM
> Subject: Re: [firebase-br] O que é mais rápido?
>
>
> > Eduardo, não consegui ver como entraria o Left Join sem um SubSelect..
se
> é
> > isso que você quis dizer.
> >
> > Obrigado
> >
> > Francisco Thiago de Almeida
> > Enter&Plug Informática
> > Divisão: Desenvolvimento e Banco de dados
> > MSN: thiago em enterplug.com.br
> > Skype: enterplug_thiago
> > ----- Original Message ----- 
> > From: "Eduardo Jedliczka" <eduardo em gerasoft.com.br>
> > To: "FireBase" <lista em firebase.com.br>
> > Sent: Friday, June 10, 2005 2:08 PM
> > Subject: Re: [firebase-br] O que é mais rápido?
> >
> >
> > Coloque 5 milhões de registros e verá que o "in" vai derrubar o
> servidor...
> >
> > Outra coisa, que tal você fazer o teste com um Left Join ???
> >
> > [s]
> >
> > ==========================
> > Eduardo Jedliczka
> > Gerasoft Informática
> > Apucarana - Pr
> > ==========================
> >
> > ----- Original Message ----- 
> > From: "Francisco Thiago" <jeandeadlucky em yahoo.com.br>
> > To: "FireBase" <lista em firebase.com.br>
> > Sent: Friday, June 10, 2005 1:53 PM
> > Subject: [firebase-br] O que é mais rápido?
> >
> >
> > > Pessoal,
> > >
> > > Eu tenho o seguinte enunciado:
> > >
> > > "Traga-me todos os cliente que não compram desde X data"
> > >
> > > Eu cheguei a dois SQL's (no final do e-mail)
> > >
> > > Qual deles seria mais rápido? Tenho uma base pequena em mãos e não dá
> pra
> > > examinar a performance
> > >
> > >
> > > Obrigado
> > >
> > > Francisco Thiago de Almeida
> > > Enter&Plug Informática
> > > Divisão: Desenvolvimento e Banco de dados
> > > MSN: thiago em enterplug.com.br
> > > Skype: enterplug_thiago
> > >
> > >
> > >
> > > O Plano usado é sempre o mesmo
> > >
> > >
> > > //by IBExpert Personal
> > > Plan
> > > PLAN SORT ((CAD_VENDAS INDEX (IDX_FK_CVEN_CCLI,IDX_CVEN_DATA_VENDA)))
> > > PLAN (CAD_CLIENTE NATURAL)
> > >
> > > Adapted Plan
> > > PLAN SORT ((CAD_VENDAS INDEX (IDX_FK_CVEN_CCLI,IDX_CVEN_DATA_VENDA)))
> PLAN
> > > (CAD_CLIENTE NATURAL)
> > >
> > > 1=
> > >
> > > select CCLI_COD
> > >      , CCLI_NOME
> > >      , CCLI_ENDERECO
> > >      , CCLI_CIDADE
> > >      , CCLI_CEP
> > >      , CCLI_FONE1
> > >      , CCLI_FONE2
> > >      , CCLI_INSCR_RG
> > >      , CCLI_CNPJ_CPF
> > > from CAD_CLIENTE
> > > where
> > >  not exists
> > >          (
> > >             select distinct cad_vendas.ccli_codigo
> > >             from cad_vendas
> > >             where cad_vendas.cven_data_venda > :dataini
> > >               and cad_vendas.ccli_codigo = cad_Cliente.ccli_cod
> > >          )
> > >
> > > 2 =
> > >
> > > select CCLI_COD
> > >      , CCLI_NOME
> > >      , CCLI_ENDERECO
> > >      , CCLI_CIDADE
> > >      , CCLI_CEP
> > >      , CCLI_FONE1
> > >      , CCLI_FONE2
> > >      , CCLI_INSCR_RG
> > >      , CCLI_CNPJ_CPF
> > > from CAD_CLIENTE
> > > where
> > >  ccli_cod not in
> > >          (
> > >             select distinct cad_vendas.ccli_codigo
> > >             from cad_vendas
> > >             where cad_vendas.cven_data_venda > :dataini
> > >               and cad_vendas.ccli_codigo = cad_Cliente.ccli_cod
> > >          )
> > >
> > >
> > > cad_vendas.ccli_codigo = Tem um índice de FK
> > > cad_vendas.cven_data_venda = Tem um índice para pesquisa (acendente)
> > >
> > >
> > >
> > >
> > >
> > >
> > > ____________________________________________________
> > > Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis!
> > http://mail.yahoo.com.br
> > >
> > >
> > > ______________________________________________
> > > FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> > > Para editar sua configuração na lista, use o endereço
> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> > >
> > >
> >
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> > Para editar sua configuração na lista, use o endereço
> > http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> >
> >
> >
> >
> >
> > ____________________________________________________
> > Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis!
> http://mail.yahoo.com.br
> >
> >
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> > Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> >
> >
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
>
>
> ____________________________________________________
> Yahoo! Mail, cada vez melhor: agora com 1GB de espaço grátis!
http://mail.yahoo.com.br
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>





Mais detalhes sobre a lista de discussão lista