@mkeintz that's why the first line reads "This yields the same result ... if you only have one record for that subjectID"
Since we now know that there are several records, the OP needs to think about how he wants to organise his data.
What are you actually trying to do?
Why would you join every Adverse Event record with every Medical History record? What possible meaning could you get from that?
Did you just want to create separate output tables for each input table instead?
data work.dm;
set seretide.dm ;
where subjectid='0001' ;
run;
data work.ae;
set seretide.ae ;
where subjectid='0001' ;
run;
data work.cm;
set seretide.cm ;
where subjectid='0001' ;
run;
...
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.