Re: [firebase-br] AJUDA - SELECT CAUSANDO LENTIDÃO NO BANCO

Edilene Baldim Ribeiro edcamp74 em hotmail.com
Seg Ago 28 15:47:36 -03 2006


Ok Marcelo

Vou fazer/verificar tudo isso que está me sugerindo.
Muito obrigada pela ajuda.



>From: "Marcelo Silva" <marcvan em ig.com.br>
>Reply-To: FireBase <lista em firebase.com.br>
>To: "FireBase" <lista em firebase.com.br>
>Subject: Re: [firebase-br] AJUDA - SELECT CAUSANDO LENTIDÃO NO BANCO
>Date: Mon, 28 Aug 2006 15:42:02 -0300
>
>A principio uma das coisas que podem parecer nao ter nada a ver é deixar o
>banco resolver algumas questões que poderiamos ja dar de forma direta a 
>ele.
>Por exemplo a falta do "AS"
>Assim ele tem que analizar quando é ou não apelido... essa tarefa vc pode
>poupa-lo
>Outra coisa que esta me parecendo estranho é vc colocar as mesmas tabela do
>primeiro select e no segundo.
>Voce pode fazer o uso de :Parametros
>
>Exemplo
>
>SELECT CAMPO AS CP_TB1 TABELA 1 WHERE (VALOR = :P_VALOR)
>UNION ALL
>SELECT CAMPO AS CP_TB2 TABELA 2 WHERE (VALOR = :P_VALOR)
>
>Uma outra coisa é fazer uso de JOIN quando possivel evitando assim
>duplicidade dentro do result do where no caso de SELECT CAMPO1, CAMPO2 FROM
>TABELA1 , TABELA2
>
>Outra coisa ainda é analizar a criação de indices nos campos envolvidos em
>selects com results extensos isso torna o result mais rapido :)
>
>Bem, minhas dicas são com nase no FB talvez eu esteja falando besteira com
>relação ao Oracle
>
>
>
>----------------------
>Marcelo Silva
>(11) 9693-4251
>(11) 6723-3106 - LESTCRED
>MSN: marcvan em ig.com.br
>
>
>
>
>
>Olá pessoal.
>
>O DBA da empresa que trabalho nos passou esse "select" dizendo que está
>causando muita lentidão no banco.
>Já estudei a linha de código mas não estou conseguindo visualizar nenhuma
>mudança de melhoria.
>Se alguém puder me ajudar desde já agradeço muito.
>
>select:
>SELECT   espe_evt_cod esp_princ,
>          DECODE (a.espe_evt_cod,
>                  99999999, a.exame,
>                  DECODE (NVL (b.pcdm_grup_espe_cod, -1), -1, 10014, 
>a.exame)
>                 ) proced,
>          a.exame
>     FROM hist_exame a,
>              pcdm_pcm b,
>              espe_esp f
>    WHERE :pr_local_id IS NULL
>      AND a.mes_ref BETWEEN TO_DATE (:pr_mes_ref, 'mm/yyyy')
>                        AND TO_DATE (:pr_mes_ref2, 'mm/yyyy')
>      AND a.grp_emp_id = :pr_grp_emp_id
>      AND a.prest_id = :pr_prest_id
>      AND a.vlr_pago > 0
>      AND b.pcdm_cod(+) = a.exame
>      AND f.espe_cod(+) = a.exame
>
>UNION
>
>SELECT   espe_evt_cod esp_princ,
>          DECODE (a.espe_evt_cod,
>                  99999999, a.exame,
>                  DECODE (NVL (b.pcdm_grup_espe_cod, -1), -1, 10014, 
>a.exame)
>                 ) proced,
>          a.exame
>     FROM hist_exame        a,
>              pcdm_pcm        b,
>              pred_prt_edr     c,
>              tiep_prt_edr_tip d,
>              recf_fxa_cep_rgi e,
>              espe_esp           f
>    WHERE :pr_local_id IS NOT NULL
>      AND a.mes_ref BETWEEN TO_DATE (:pr_mes_ref, 'mm/yyyy')
>                        AND TO_DATE (:pr_mes_ref2, 'mm/yyyy')
>      AND a.grp_emp_id = :pr_grp_emp_id
>      AND a.prest_id = :pr_prest_id
>      AND a.vlr_pago > 0
>      AND b.pcdm_cod(+) = a.exame
>      AND f.espe_cod(+) = a.exame
>      AND c.pred_prtd_cod = a.prest_id
>      AND d.tiep_pred_cod = c.pred_cod
>      AND d.tiep_tip_edr = 3
>      AND e.recf_etor_cod = :pr_etor_cod
>      AND e.recf_rgio_cod = :pr_local_id
>      AND e.recf_cepf_cep_ini <= c.pred_cepe_cod
>      AND e.recf_cepf_cep_fim >= c.pred_cepe_cod
>GROUP BY espe_evt_cod, a.exame, b.pcdm_grup_espe_cod, f.espe_cod
>ORDER BY 1 ASC
>
>_________________________________________________________________
>O Windows Live Spaces é seu espaço na internet com fotos (500 por mês), 
>blog
>e agora com rede social http://spaces.live.com/
>
>
>______________________________________________
>FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.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
>
>
>__________ Informação do NOD32 1.1725 (20060825) __________
>
>Esta mensagem foi verificada pelo NOD32 Sistema Antivírus
>http://www.nod32.com.br
>
>
>
>______________________________________________
>FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.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
>
>
>
>--
>Internal Virus Database is out-of-date.
>Checked by AVG Free Edition.
>Version: 7.1.394 / Virus Database: 268.10.5/403 - Release Date: 28/07/2006
>
>
>
>______________________________________________
>FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.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

_________________________________________________________________
Descubra aqui como mandar Torpedos Messenger! 
http://www.msn.com.br/artigos/maguire/default.asp 
http://www.msn.com.br/artigos/maguire/default.asp





Mais detalhes sobre a lista de discussão lista