BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Agent1592
Pyrite | Level 9

I have a basic question:

data test; set temp1 temp2;run;

Temp1 and temp2 are 2 datasets with similar columns. Can somebody explain what this command is doing. Is it a union of the two datasets. Is there a better proc sql alternative to combine temp1 and temp2. 

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
Kurt_Bremser
Super User

This is like a union all in sql. But compare your data step code with the necessary sql code:

proc sql;
create table test as
select * from temp1
union all
select * from temp2;
quit;

and you'll see why it's rarely used when the data step is much more concise. Aside from the fact that the data step has capabilities beyond those of sql.

View solution in original post

2 REPLIES 2
LinusH
Tourmaline | Level 20
Yes it is like a union.
Better depends in your requirements/preferences, but doing it in SQL would get you similar results.
Data never sleeps
Kurt_Bremser
Super User

This is like a union all in sql. But compare your data step code with the necessary sql code:

proc sql;
create table test as
select * from temp1
union all
select * from temp2;
quit;

and you'll see why it's rarely used when the data step is much more concise. Aside from the fact that the data step has capabilities beyond those of sql.

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

How to Concatenate Values

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1221 views
  • 2 likes
  • 3 in conversation