Hello,
I tried to join two tables using left join, which is a one to mutiple joins based on the two conditions, however the date condition was not applied. I am wondering what is the reason. Thank you !
proc sql;
create table temp1 as
select a.PatientID, a.AdministeredDate,
b.TestDate, b.TestResult, (a.AdministeredDate -b.testdate) as dif_admin_test
from admindate as a
left join wgt as b
on a.patientid = b.patientid and (a.AdministeredDate -b.testdate) <= 7
order by patientid, AdministeredDate, TestDate;
quit;
What makes you believe the data condition was not applied? Provide some example input data that duplicates the behavior.
You may be interested in attempting this:
proc sql;
create table temp1 as
select a.PatientID, a.AdministeredDate,
b.TestDate, b.TestResult, (a.AdministeredDate -b.testdate) as dif_admin_test
from admindate as a
left join wgt as b
on a.patientid = b.patientid
where a.AdministeredDate -b.testdate <= 7
order by patientid, AdministeredDate, TestDate;
quit;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.