No problem-I'm happy to help. I went ahead and adapted the code based on what you provided. I think this is what you need, but please feel free to let me know if it doesn't capture something you need. The only issue I see with it is that it creates a Cartesian product, which may be problematic if you're working with a large data set or database. / Não há problema. Terei todo o gosto em ajudar. Eu fui em frente e adaptei o código com base no que você forneceu. Acho que é disso que você precisa, mas sinta-se à vontade para me avisar se não houver algo de que você precisa. O único problema que vejo é que ele cria um produto cartesiano, o que pode ser problemático se você estiver trabalhando com um grande conjunto de dados ou banco de dados.
data cadastro;
input cod_operadora :$3. instalacao $10.;
datalines;
003 ABCDEFGHIJ
001 ABCDEFGHII
002 ABCDEFGHHH
006 ABCDEFGGGG
;
run;
data cliente;
infile datalines delimiter = ",";
input num_contrato assinante $ tipo_contrato $;
datalines;
123456789,A,XYZ
987654321,B,ABC
929193921,C,ABC
999239123,D,EFG
;
run;
proc sql;
select
cad.cod_operadora,
cad.instalacao,
cli.num_contrato,
cli.assinante,
cli.tipo_contrato
from
cadastro cad, /* ou cadastro AS cad */
cliente cli /* ou cliente AS cli */
where
catx(" | ", cod_operadora, num_contrato) in ("003 | 123456789", "001 | 987654321");
quit;
... View more