[oracle_br] Usuários/Schemas

2006-09-19 Por tôpico Jonatas Gomes Alves
Pessoal, meu banco tem 250 usuários. Desses, somente
10 ou 15 possuem objetos (constituem schemas).

Gostaria de um select que me retornasse esses
usuários.
Estou usando o select abaixo, mas é extremamente lento
(penso existir uma maneira mais otimizada):

select distinct owner from all_objects;

Obg!



___ 
Yahoo! Acesso Grátis - Internet rápida e grátis. Instale 
o discador agora! 
http://br.acesso.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/oracle_br@yahoogrupos.com.br/ 
--__

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

 




[oracle_br] Otimização de consulta

2006-09-19 Por tôpico Jonatas Gomes Alves
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
'000' AND '999' 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
'000' AND '999' 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/oracle_br@yahoogrupos.com.br/ 
--__

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