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]