[firebase-br] AJUDA - SELECT CAUSANDO LENTIDÃO NO BANCO
Edilene Baldim Ribeiro
edcamp74 em hotmail.com
Seg Ago 28 11:52:47 -03 2006
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/
Mais detalhes sobre a lista de discussão lista