Senhores, tenho a seguinte consulta que demora 35
segundos:
SELECT ...
FROM VW_USUARIO, TB_REMESSA_USUARIO
WHERE VW_USUARIO.FL_STATUS_USUARIO IN (2,5) AND
 VW_USUARIO.CD_EMPRESA_CONVENIADA LIKE '%' AND
 TB_REMESSA_USUARIO.CD_USUARIO = VW_USUARIO.cd_usuario
AND
 ('222138' is null or (TB_REMESSA_USUARIO.NU_REMESSA =
TO_NUMBER('222138'))) AND
 VW_USUARIO.NU_USUARIO = VW_USUARIO.NU_TITULAR AND
 SUBSTR(VW_USUARIO.NU_ORDEM_USUARIO,1) BETWEEN
'00000000000' AND '99999999999' AND 
 VW_USUARIO.DT_CANCELAMENTO IS NULL 
ORDER BY VW_USUARIO.NU_ORDEM_USUARIO;


Ao comentar o trecho na linha 6, a "mesma" consulta
demora apenas 0.26 segundos:

FROM VW_USUARIO, TB_REMESSA_USUARIO
WHERE VW_USUARIO.FL_STATUS_USUARIO IN (2,5) AND
 VW_USUARIO.CD_EMPRESA_CONVENIADA LIKE '%' AND
 TB_REMESSA_USUARIO.CD_USUARIO = VW_USUARIO.cd_usuario
AND
 (/*'222138' is null or*/
(TB_REMESSA_USUARIO.NU_REMESSA = TO_NUMBER('222138')))
AND
 VW_USUARIO.NU_USUARIO = VW_USUARIO.NU_TITULAR AND
 SUBSTR(VW_USUARIO.NU_ORDEM_USUARIO,1) BETWEEN
'00000000000' AND '99999999999' AND 
 VW_USUARIO.DT_CANCELAMENTO IS NULL 
ORDER BY VW_USUARIO.NU_ORDEM_USUARIO;


A razão de ter o trecho é pq ele será preenchido por
um parâmetro apartir do Forms (a consulta é de um
relatório), onde posso indicar uma remessa ou deixar o
campo vazio.

A pergunta é: pq mesmo fornecendo o valor da remessa,
a consulta fica lenta so pq tem a comparação com IS
NULL? E como posso otimizar esse comportamento?

Obg,
Até mais.


                
_______________________________________________________ 
O Yahoo! está de cara nova. Venha conferir! 
http://br.yahoo.com


--------------------------------------------------------------------------------------------------------------------------
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/[email protected]/ 
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________

OPORTUNIDADES DE TRABALHO, VAGAS, EMPREGOS PARA PROFISSIONAIS ORACLE VISITE: 
http://www.oraclebr.com.br/
__________________________________________________________________
Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine  
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a