[firebase-br] Melhorar consulta

Renilson Santos Moura rsmybr em gmail.com
Sex Ago 16 09:46:29 -03 2013


Bom, eu recomendo executar esta consulta numa ferramenta case (por exemplo
IBExpert) e ver Análise de Performance (Performance Analysis), pode ser
falta de índice.

[]s

Renilson


Em 16 de agosto de 2013 08:53, Renan Rogowski Pozzo
<renanrpozzo em gmail.com>escreveu:

> Bom dia,
> Tente mudar a consulta do NOME, ao invés de usar essa concatenação tente o
> OR
> Ex.:
> (PJ.NOME containig :nome or PF.NOME containig :nome or C_PJ.NOME containig
> :nome)
>
> Abraço,
> Renan
>
>
> Em 15 de agosto de 2013 21:30, Carlos Phelippe <
> carlos.phelippe em digilab.com.br> escreveu:
>
> > Olá pessoal,
> > preciso de ajuda para otimizar a consulta abaixo:
> >
> > BEGIN
> > FOR SELECT C.IDENTIFICADOR, C.DATA, C.HORA, C.SONORO, C.AVISADO, C.OPCAO,
> > C.TEXTO, C.CONTATO, C.LOGIN, C.PUBLICO, C.QUEM, C.SINCRONIZAR,
> > C.DATAGRAVACAO, C.TIPO, TC.COR
> >
> > FROM COMPROMISSO C LEFT JOIN PESS0A_COMPROMISSO PC ON PC.ID_COMPROMISSO =
> > C.IDENTIFICADOR
> > LEFT JOIN TIPOCOMPROMISSO TC ON TC.NOME = C.TIPO
> > LEFT JOIN PESSOAFISICA PF ON PF.IDENTIFICADOR = PC.ID_PESSOA AND
> > PC.TIPO_PESSOA = :TIPO_PESSOA_PF
> > LEFT JOIN PESSOAJURIDICA PJ ON PJ.IDENTIFICADOR = PC.ID_PESSOA AND
> > PC.TIPO_PESSOA = :TIPO_PESSOA_PJ
> > LEFT JOIN CONTATO_PJ C_PJ ON C_PJ.IDENTIFICADOR = PC.ID_PESSOA AND
> > PC.TIPO_PESSOA = :TIPO_PESSOA_C_PJ
> >
> > WHERE C.DATA BETWEEN :DATA_01 AND :DATA_02 AND COALESCE(C.TEXTO,'')
> > CONTAINING :TEXTO_ AND
> > COALESCE(PJ.NOME,'')||COALESCE(PF.NOME,'')||COALESCE(C_PJ.NOME,'')
> > CONTAINING :NOME AND C.OPCAO IN (:OPCAO_01, :OPCAO_02, :OPCAO_03) INTO
> > :IDENTIFICADOR, :DATA, :HORA, :SONORO, :AVISADO, :OPCAO, :TEXTO,
> :CONTATO,
> > :LOGIN, :PUBLICO, :QUEM, :SINCRONIZAR, :DATAGRAVACAO, :TIPO, :COR DO
> > SUSPEND;
> >
> > END
> >
> > Como poderia otimizar a consulta acima?
> >
> > [
> >
> http://www.digilab.com.br/wp-content/themes/Digilab/images/logo_digilab.jpg
> ]
> >   Carlos Phelippe
> > Analista de Sistemas
> > +55 48 3234 4041
> > digilab.com.br<http://www.digilab.com.br>
> >
> > ______________________________________________
> > 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
> >
> ______________________________________________
> 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