GARANTIR DESCONTO

Fórum como tirar os espaços em branco no oracle sem usar o trim? #497069

08/10/2014

0

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

Wener Xavier

Responder

Posts

08/10/2014

Wander Santos

http://rafaelribeirowebmaster.com.br/tirar-espacos-em-brancos-em-campo-de-oracle-how-to-remove-white-spaces/
Responder

Gostei + 0

08/10/2014

Wener Xavier

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.
Responder

Gostei + 0

09/10/2014

Lucas Ramos

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.
Responder

Gostei + 0

09/10/2014

Wander Santos

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
Responder

Gostei + 0

09/10/2014

Lourival Queiroz

Utiliza a função "replace"
Responder

Gostei + 0

09/10/2014

Wener Xavier

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.
Responder

Gostei + 0

10/10/2014

Wander Santos

Sistema punk hein?!
Responder

Gostei + 0

10/10/2014

Wener Xavier

e verdade mas desde já agradeço a colaboração de todos.
Responder

Gostei + 0

10/10/2014

Wener Xavier

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.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar