Máscara de CPF e CNPJ

–Mascarando CPF e CPNJ
SELECT
    Decode(cpf, NULL,NULL,
    Translate(To_Char(cpf/100
      ,’000,000,000.00′)
      ,’,.’
      ,’.-’)) cpf_com_mascara,
    Decode(cnpj,NULL,NULL,
    REPLACE(REPLACE(REPLACE(To_Char(LPad(REPLACE(cnpj,’ ‘)
        ,14
        ,’0′)
        ,’00,000,000,0000,00′)
        ,’,’
        ,’.')
        ,’ ‘)
      ,’.'||Trim(To_Char(Trunc(Mod(LPad(cnpj
        ,14
        ,’0′)
        ,1000000)/100)
        ,’0000′))||’.’
      ,’/'||Trim(To_Char(Trunc(Mod(LPad(cnpj
        ,14
        ,’0′)
        ,1000000)/100)
        ,’0000′))||’-')) cnpj_com_mascara
FROM (
    (SELECT ‘12345678912′ cpf, ‘12345678000189′ cnpj FROM dual))

— Retirando a máscara
SELECT REPLACE(Translate(‘012.365.478-56′,’.-’,'  ‘),’ ‘) FROM dual;
SELECT REPLACE(Translate(‘12.365.478/0001-56′,’./-’,'   ’),’ ‘) FROM dual;

~ por Bogos em Outubro 17, 2008.

2 Respostas to “Máscara de CPF e CNPJ”

  1. Legal, parabéns.

  2. Gostei da solução bem trabalhada mas, será que vale a pena todo este processamento para pré-mascarar um simples cnpj? Fora do SQL fica mais eficaz embora não tão elegante.

Deixe uma resposta