sim sim cara eu sei ... na verdade nao uso o numero fixo vem de uma variavel
na verdade é assim replace(valor, '-',''); como falei por algum motivo num select funcionou e no outro nao Em 8 de junho de 2017 17:16, Vitor Junior vitorj...@gmail.com [oracle_br] < oracle_br@yahoogrupos.com.br> escreveu: > > > Olha onde o Chiappa colocou as aspas. Está diferente do teu exemplo. ;) > > Em qui, 8 de jun de 2017 às 17:02, Mario Rodrigues > marioirodrig...@gmail.com [oracle_br] <oracle_br@yahoogrupos.com.br> > escreveu: > >> >> >> Oi Chiappa, >> >> Boa Tarde >> >> Pois eh eu tb acho obvio, porem não sei o que acontece. >> >> Tenho uma função que tem um select que tem como clausula >> >> numero = replace(4506-3,'-','') >> dai nao me retorna nada >> se eu coloco 45063 ou '45063' retorna >> >> usando dbms_output.put_line desse3 replace aparece 45063 ... porem no >> select nao retorna nada ... >> >> o tipo de dados é number ja tentei varchar e nada tb >> >> Por isso fiz essa pergunta "meio perdida" quase na certeza que a resposta >> seria em cima da string. >> >> o mais engraçado é tenho um outro select que usa esse mesmo replace e >> retorna o que precisa retornar .. somente nesse maldito select não vem >> rsrsrs >> >> Mas ok, obrigado! >> >> >> >> >> Em 8 de junho de 2017 16:53, jlchia...@yahoo.com.br [oracle_br] < >> oracle_br@yahoogrupos.com.br> escreveu: >> >>> >>> >>> Mário, óbvio : se vc tem uma expressão numérica, OBVIAMENTE o caracter >>> '-' vai ser entendi como um sinal de substração, né não ??? E óbvio#2, tá >>> Documentado que a função REPLACE trabalha com strings... >>> Então para atender aos dois pontos simplesmente TRANSFORME esse número >>> em STRING, fechando a expressão com aspas, assim : >>> >>> SELECT replace('4506-3', '-', '') FROM DUAL; >>> >>> []s >>> >>> Chiappa >>> >> >> -- > Att,/Regards, > > Vitor Jr. > https://br.linkedin.com/in/vitorjunior81 > > >