como tirar os espaços em branco no oracle sem usar o trim?
como tirar os espaços em branco no oracle sem usar o trim, porque quando uso o trim o tempo de execução da minha sql vai lá pra cima, ou seja, quase que impraticável a utilização do mesmo.
Wener Xavier
Curtidas 0
Respostas
Wander Santos
08/10/2014
http://rafaelribeirowebmaster.com.br/tirar-espacos-em-brancos-em-campo-de-oracle-how-to-remove-white-spaces/
GOSTEI 0
Wener Xavier
08/10/2014
obrigado Wander a sql da certo, mas o tempo de execução muito alto, praticamente a mesma coisa que o trim, não resolveu o meu problema, mas valeu a força.
GOSTEI 0
Lucas Ramos
08/10/2014
Acredito não ter uma maneira de tirar os espaços em brancos sem utilizar essa função, a não ser que crie uma função que faça a mesma coisa com uma heurística melhor.
Mas nesse caso não seria melhor tratar na hora que vai gravar, para não gravar com esses espaços em branco? Assim quando pesquisar não precisa utilizar o trim.
Mas nesse caso não seria melhor tratar na hora que vai gravar, para não gravar com esses espaços em branco? Assim quando pesquisar não precisa utilizar o trim.
GOSTEI 0
Wander Santos
08/10/2014
vc ta precisando tirar os espaços pra q?
Se for em alguma aplicacao faz a query normal e tira o espaço com alguma função da linguagem
Se for em alguma aplicacao faz a query normal e tira o espaço com alguma função da linguagem
GOSTEI 0
Lourival Queiroz
08/10/2014
Utiliza a função "replace"
GOSTEI 0
Wener Xavier
08/10/2014
a questão é que preciso fazer esse procedimento dentro de uma procedure, então não tem como tratar na aplicação, já discutimos com o desenvolvimento a possibilidades de tirar os campos em branco, mas daria muito trabalho fazer uma verificação na aplicação, mesmo porque a mesma sql que eu uso para fazer uma pesquisa no varchar2 eu uso no char, mas o problema e os insert, se ele manda um insert vachar2 com os espaços brancos ele grava da mesma forma que o char, levando em consideração que a aplicação e muito grande, só para ter uma ideia a tabela onde tem esses espaços tem 6 milhões e lavai pancada de linhas.
GOSTEI 0
Wander Santos
08/10/2014
Sistema punk hein?!
GOSTEI 0
Wener Xavier
08/10/2014
e verdade mas desde já agradeço a colaboração de todos.
GOSTEI 0
Wener Xavier
08/10/2014
bom chegamos a uma solução, mudamos o campo da tabela para varchar2 onde era char, e vimos que o oracle pesquisa o dando independente se tem espaços em branco ou não, ou seja os select da aplicação continua executando, e os insert também continua inserindo com espaças em branco, mas como já falei os select ignorou a existência dos espaços no tipo varchar2, isso fez com que a procedure passando de 57 segundo de execução para 0,07 segundos de execução, resumindo deu certo.
grato a todos pela atenção.
grato a todos pela atenção.
GOSTEI 0