Olá, Observe este pequeno exemplo:
SQL> select '01133335555' original, regexp_replace('01133335555', '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') modificado from dual; ORIGINAL MODIFICADO ----------- ------------- 01133335555 011-3333-5555 1 linha selecionada. Creio que isso resolverá seu problema: regexp_replace(NR_FONE_PRINCIPAL, '^(\d{3})(\d{4})(\d{4})$', '\1-\2-\3') Tenho um exemplo bem parecido, formatando CPF neste endereço: http://profissionaloracle.com.br/blogs/braga/2009/07/06/formatando-saida-com-regexp_replace-cpf/ []s Braga Em 1 de junho de 2010 09:37, Flaviano, Wellington (GE Capital) < wellington.flavi...@ge.com> escreveu: > > > Pessoal, já peço desculpas pela dúvida, mas não manjo de oracle como de > mssql ... então vamos lá. > > Tenho o campo NR_TELEFONE que é preenchido assim: 01133335555 e quero > transformar ele assim 011-3333-5555 e um simples select > > Estou fazendo da seguinte forma: TO_CHAR(MAX(SUBSTR(NR_FONE_PRINCIPAL,1,3)) > + '-' + MAX(SUBSTR(NR_FONE_PRINCIPAL,4,4)) + '-' + > MAX(SUBSTR(NR_FONE_PRINCIPAL,8,4))) AS NR_FONE_PRINCIPAL > > Só que não está funcionando o que estou fazendo de errado? > > Valeu. > > > [As partes desta mensagem que não continham texto foram removidas] > > > [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ -------------------------------------------------------------------------------------------------------------------------- >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira >responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -------------------------------------------------------------------------------------------------------------------------- >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » >Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: >http://www.oraclebr.com.br/ ------------------------------------------------------------------------------------------------------------------------ Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/oracle_br/ <*> Para sair deste grupo, envie um e-mail para: oracle_br-unsubscr...@yahoogrupos.com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html