Entendi..
Obrigada a todos.

2009/1/30 jlchiappa <jlchia...@yahoo.com.br>

>   Colega, se a sua pesquisa é NNN% (ou seja, tudo que COMEÇA com NNN),
> como está no exemplo, absolutamente NÂO FAZ SENTIDO o instr, a
> pesquisa seria (em supondo-se que vc quer também pesquisa case
> insensitive com UPPER) :
>
> WHERE upper(colunadatabela) LIKE 'NNN%'
>
> e aí, claro, o UPPER na coluna indexada (tal como qquer função)
> desabilita índices b*tree normais, vc teria que ter um índice b*tree
> de função criado COM o upper, ok ? Via de regra context indexes só
> fazem sentido se a sua pesquisa é %NNN% (ie, vc NÂO SABE o começo da
> chave, quer procurar por qquer posição), aí sim a busca direta via
> índice não funcionaria, ele teria que fazer um table scan ou um index
> scan, num caso desse é que pode ser indicado o context index.
>
> []s
>
> Chiappa
> --- Em oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br>,
> Mária Cristina Silva
> <mariancrist...@...> escreveu
>
> >
> > Bom dia!
> > Senhores estou precisando realizar uma busca por nome, e tentei
> utilizar as
> > formas abaixo, mas não tive muito sucesso, usando o like ele demora
> muito a
> > me dá o resultado pois as tabelas possuem mais de 4 milhoes de
> registros..
> >
> > tentei dessa forma :
> >
> > ( instr(upper(reservanom0_.NOME_EMPRESA),upper('GAMA & CIA')) > 0) e
> > dessa
> >
> > *
> >
> > and* CONTAINS(processovo0_.NOME_EMPRESA, 'ACADEMIA GENESIS%',1) > 0
> usando o
> > Index mas usando o index ele não traz em algumas buscas...
> >
> > Alguém sabe se existe uma forma melhor de fazer essa busca?
> >
> > Agradeço atneção de todos.
> > *
> >
> >
> > *
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
> 
>



-- 
Abraços,
Mária Cristina
Cel: 031-8883-5543
E-mail: mariancrist...@gmail.com
MSN:   mcristinasil...@hotmail.com
-- 
"O começo é a parte mais importante do trabalho."
- Platão


[As partes desta mensagem que não continham texto foram removidas]

Responder a