06-03-2016 04:18 PM - edited 06-03-2016 04:20 PM
As question mentioned, I have several tables with product IDs variables from different time, a lot of which are in common. However, some of each contains ID that the others do not contain.
I want to combine them vertically based on their time, but only take the common variables in all the tables. Is there a simple step I can do that instead of checking for missing data in the new table everytime I combine them? Thank you!
06-03-2016 05:17 PM
Do you mean something like this?
/* Create test data */ data have1; array x year a b c d e (2011 10:14); run; data have2; array x year b c d e f g (2012 20:25); run; data have3; array x year c d e f g h (2013 30:35); run; /* Combine tables vertically, restricted to common variables */ proc sql; create table want as select * from have1 union all corr select * from have2 union all corr select * from have3; quit; proc print data=want noobs; run;
You may want to check the sort order in dataset WANT and possibly add an ORDER BY clause if you're not satisfied.