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

once I create hash object and depending on hash.find result (if rc=0) How I can create two output table, like if I find the key result goes to one table and if key did not find goes to another table.

Thanks in advance

1 ACCEPTED SOLUTION

Accepted Solutions
novinosrin
Tourmaline | Level 20

Hi @pkp  Please see if this example helps-



data lookup;
 do key=1 to 3;
  data=rand('uniform')*100;
  output;
 end;
run;

data base;
 do key=1 to 10;
  output;
 end;
run;

data one two;
 if _n_=1 then do;
 if 0 then set lookup;
  dcl hash h(dataset:'lookup');
  h.definekey('key');
  h.definedata('data');
  h.definedone();
 end;
 set base;
 rc=h.find();
 if rc=0 then output one;
 else do;
  call missing(data);
  output two;
 end;
run;

 

 

View solution in original post

2 REPLIES 2
novinosrin
Tourmaline | Level 20

Hi @pkp  Please see if this example helps-



data lookup;
 do key=1 to 3;
  data=rand('uniform')*100;
  output;
 end;
run;

data base;
 do key=1 to 10;
  output;
 end;
run;

data one two;
 if _n_=1 then do;
 if 0 then set lookup;
  dcl hash h(dataset:'lookup');
  h.definekey('key');
  h.definedata('data');
  h.definedone();
 end;
 set base;
 rc=h.find();
 if rc=0 then output one;
 else do;
  call missing(data);
  output two;
 end;
run;

 

 

pkp
Calcite | Level 5 pkp
Calcite | Level 5
Thanks a lot