data trial;
merge trial1
trial2;
by ???
run;
trial1 has the field gen_id
trial2 has the field sys_id
they are an equal join but with different names. If they had the same name it would be a simple by statement. How can I join these two when they have equal value and different names?
data trial;
merge trial1(rename=(gen_id=sys_id)) trial2;
by sys_id;
run;
Choose the "id" you want to keep and rename the other one:
data trial;
merge trial1 /*keeping gen_id*/
trial2 (rename=sys_id=gen_id);
by gen_id;
run;
Or without renaming/Sorting, use
Proc sql;
create table trail as
select * from trail1 a, trial2 b where a.gen_id=b.sys_id;
quit;
Haikuo
proc sql;
create table trial as
select
*
from
trial1 t1
inner join trial2 t2
on t1.gen_id=t2.sys_id;
quit;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.