Basic question

Occasional Contributor
Posts: 9

Basic question

Hi all,

I have two SAS datasets with different variable names. I need to pull all the rows in dataset that match a value in the other dataset. One variable name is account with the other being custaccount. There are 150 or so values in custaccount that can all be found in the other dataset in account. I want to pull all the data attached to account using custaccount as a key. There must be an incredibly simple way to do this, I am still learning. Thanks all.

Posts: 8,163

Re: Basic question

You have to be clearer regarding what you want.  If one dataset is called "one" and it contains an id variable called account (plus 150 or so other variables), and the other is called "two" and it contains a variable called custaccount (plus the same 150 or so other variables), do you just want to select the records from one whose account id is in two but called custaccount?  Are there multiple records for account and/or custaccount in either of the files?  Are you interested in the remaining 150 or so variables from either of the files?

Super User
Posts: 23,663

Re: Basic question

PROC SQL is one of the simplest to write and understand IMO

proc sql;

     create table all_accounts as

     select *

     from table1

      where account in

          (select distinct custaccount from table2);


Occasional Contributor
Posts: 9

Re: Basic question

Excellent. That works perfectly. Thank you so much.

Ask a Question
Discussion stats
  • 3 replies
  • 3 in conversation