<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Merging on Multiple Variables in one Data Set in New SAS User</title>
    <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962864#M43210</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/466351"&gt;@trevand&lt;/a&gt;, can you show us what you'd like the output dataset(s) to look like?&lt;/P&gt;</description>
    <pubDate>Fri, 28 Mar 2025 17:58:23 GMT</pubDate>
    <dc:creator>antonbcristina</dc:creator>
    <dc:date>2025-03-28T17:58:23Z</dc:date>
    <item>
      <title>Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962862#M43209</link>
      <description>&lt;P&gt;I would like to merge two dataset using one variable in one data set and multiple variables in the second data set. Here are the examples of the data sets. I need to use ID from data1 and merge on either ID1, ID2, or ID3 from data2. &lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data data1;
    input ID VAR1 $;
    datalines;
1 A
1 B
1 C
2 A
2 C
3 A
3 B
;
run;


data data2;
    input ID1 ID2 ID3 VAR2;
    datalines;
1 . . 22
1 . . 25
4 2 . 40
4 2 . 24
4 2 . 29
5 6 3 12
5 6 3 15
;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 28 Mar 2025 17:50:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962862#M43209</guid>
      <dc:creator>trevand</dc:creator>
      <dc:date>2025-03-28T17:50:20Z</dc:date>
    </item>
    <item>
      <title>Re: Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962864#M43210</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/466351"&gt;@trevand&lt;/a&gt;, can you show us what you'd like the output dataset(s) to look like?&lt;/P&gt;</description>
      <pubDate>Fri, 28 Mar 2025 17:58:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962864#M43210</guid>
      <dc:creator>antonbcristina</dc:creator>
      <dc:date>2025-03-28T17:58:23Z</dc:date>
    </item>
    <item>
      <title>Re: Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962898#M43211</link>
      <description>&lt;P&gt;You want to do this by using MERGE statement of data step or PROC SQL?&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data data1(index=(id));
    input ID VAR1 $;
    datalines;
1 A
1 B
1 C
2 A
2 C
3 A
3 B
;
run;


data data2(index=(id));
    input ID1 ID2 ID3 VAR2;
if not missing(id1) then do;id=id1;output;end;
if not missing(id2) then do;id=id2;output;end;
if not missing(id3) then do;id=id3;output;end;
keep id var2;
    datalines;
1 . . 22
1 . . 25
4 2 . 40
4 2 . 24
4 2 . 29
5 6 3 12
5 6 3 15
;
run;

data want;
 merge data1(in=ina) data2;
 by id;
 if ina;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Sat, 29 Mar 2025 06:25:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962898#M43211</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2025-03-29T06:25:57Z</dc:date>
    </item>
    <item>
      <title>Re: Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962935#M43212</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/18408"&gt;@Ksharp&lt;/a&gt; thanks! Could you give maybe an example using proc sql?&lt;/P&gt;</description>
      <pubDate>Sat, 29 Mar 2025 14:39:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962935#M43212</guid>
      <dc:creator>trevand</dc:creator>
      <dc:date>2025-03-29T14:39:33Z</dc:date>
    </item>
    <item>
      <title>Re: Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962939#M43213</link>
      <description>&lt;P&gt;It seems like you could just do this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table want as
select distinct a.ID, a.VAR1, b.ID1, b.ID2, b.ID3, b.VAR2
from
  data1 A
  left join
  data2 B
  on 
  	a.ID=b.ID1
  	or
  	a.ID=b.ID2
  	or
  	a.ID=b.ID3;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 29 Mar 2025 17:51:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962939#M43213</guid>
      <dc:creator>quickbluefish</dc:creator>
      <dc:date>2025-03-29T17:51:43Z</dc:date>
    </item>
    <item>
      <title>Re: Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962940#M43214</link>
      <description>&lt;P&gt;What result would you expect in case when "data2" has:&lt;/P&gt;
&lt;LI-CODE lang="sas"&gt;1 2 . 40
1 2 3 42&lt;/LI-CODE&gt;
&lt;P&gt;in its observations?&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Bart&lt;/P&gt;</description>
      <pubDate>Sat, 29 Mar 2025 18:20:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962940#M43214</guid>
      <dc:creator>yabwon</dc:creator>
      <dc:date>2025-03-29T18:20:11Z</dc:date>
    </item>
    <item>
      <title>Re: Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962941#M43215</link>
      <description>&lt;P&gt;Something like this will produce result for all matches: single, double or even triple:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data data1;
    input ID VAR1 $;
    datalines;
1 A
1 B
1 C
2 X
2 Y
3 P
3 Q
;
run;


data data2;
  input ID1 ID2 ID3 VAR2;
datalines;
1 . . 22
1 . . 25
4 2 . 40
4 2 . 24
4 2 . 29
5 6 3 12
5 6 3 15
1 2 . 40
1 2 3 42
;
run;

data want;
  if 1=_N_ then
    do;
      if 0 then set data1;
      declare hash H(dataset:"data1", multidata:"Y");
      H.defineKey("id");
      H.defineData("var1");
      H.defineDone();
      drop id;
    end;
  array xx id1-id3;

  set data2;
  do over xx;
    if xx then
      do while(H.do_over(key:xx)=0);
        output;
      end;
  end;
 
run;

proc print;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Bart&lt;/P&gt;</description>
      <pubDate>Sat, 29 Mar 2025 18:27:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962941#M43215</guid>
      <dc:creator>yabwon</dc:creator>
      <dc:date>2025-03-29T18:27:54Z</dc:date>
    </item>
    <item>
      <title>Re: Merging on Multiple Variables in one Data Set</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962950#M43217</link>
      <description>Same as quickbluefish :&lt;BR /&gt;&lt;BR /&gt;proc sql;&lt;BR /&gt;create table want as&lt;BR /&gt;select a.*,VAR2&lt;BR /&gt;from  data1 A  left join  data2 B  on  a.ID=b.ID&lt;BR /&gt;;&lt;BR /&gt;quit;</description>
      <pubDate>Sun, 30 Mar 2025 01:56:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Merging-on-Multiple-Variables-in-one-Data-Set/m-p/962950#M43217</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2025-03-30T01:56:16Z</dc:date>
    </item>
  </channel>
</rss>

