BookmarkSubscribeRSS Feed
Dica da Semana: Como transformar um número em texto, adicionando zeros à esquerda.
pkusniaruk
SAS Employee

Você já se deparou com a necessidade de tratar e padronizar campos numéricos, transformando-os em texto e incluindo zeros à esquerda?  

Essa costuma ser uma situação bem comum, alguns exemplos recorrentes são os campos de CPF e CEP, que muitas vezes são armazenados com tipos diferentes em tabelas diversos, e demandam um tratamento para que possamos aplicar merges, joins, ou até mesmo agrupamentos, de uma forma correta. 

A forma mais prática de realizar esse tipo de tratamento é utilizando o tipo “Z” e informando a quantidade total de caracteres a serem considerados no campo. Segue abaixo a sintaxe: 

 

 

COLUNA_TEXTO = PUT(COLUNA_NUMERICA, Zn.); 

 

 

Abaixo temos um exemplo prático, onde queremos transformar um campo numérico de cpf em um campo texto de 11 posições, complementando com 0 à esquerda: 

 

 

DATA SAIDA; 
           CPF_NUM = 123456789; 
           CPF_TXT = PUT(CPF_NUM, Z11.); 
RUN; 

 

 

Resultado: 

 

 

pkusniaruk_0-1636648491899.png

 

 

2 Comments
ederbal
Fluorite | Level 6

Muito Bom!

spina
Calcite | Level 5

Muito bom! 

E para quem quiser fazer o fluxo contrário, é só utilizar a função INPUT:

 

COLUNA_NUMERICA = INPUT(COLUNA_TEXTO, n.); 

 

DATA SAIDA; 
           CPF_TXT = "00123456789"; 
           CPF_NUM = INPUT(CPF_TXT, 11.); 
RUN;

 

SAS Innovate 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Article Labels
Article Tags
Contributors