[firebase-br] RES: Delete com subselect não usa índice
Ivan Guimarães Meirelles
igmeirelles em gmail.com
Sex Set 11 10:57:42 -03 2009
Olá Daniel...
Mais um detalhe...
como vc está disparando a trigger em uma transação de DELETE então use:
OLD.vda_id e não NEW.vda_id
Um forte abraço.
-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Douglas Tosi
Enviada em: sexta-feira, 11 de setembro de 2009 09:36
Para: FireBase
Assunto: Re: [firebase-br] Delete com subselect não usa índice
2009/9/11 Daniel Sonda <daniel em mhnet.com.br>:
> delete from conta_receber
> where (conta_receber.par_id in (
> select parcela.par_id
> from parcela
> where (parcela.vda_id = new.vda_id)))
> Posso estruturar a instrução de maneira diferente a fim de otimizar?
Acho que não tem como indexar as duas tabelas neste caso. Mas você
pode tentar o seguinte comando e ver se melhora um pouco.
delete from conta_receber
where exists
(
select 1
from parcela
where parcela.vda_id = new.vda_id and parcela.par_id = conta_receber.par_id
)
hth,
--
Douglas Tosi
www.sinatica.com
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista