<?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 Merge many to one in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Merge-many-to-one/m-p/918162#M361678</link>
    <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I have this 2 dataset&lt;/P&gt;
&lt;P&gt;data D1;&lt;BR /&gt;input PROV$ mes sub$ ;&lt;BR /&gt;datalines;&lt;BR /&gt;001002 1 B&lt;BR /&gt;001002 2 B&lt;BR /&gt;001003 1 B&lt;BR /&gt;001003 2 B&lt;BR /&gt;001004 1 B&lt;BR /&gt;001004 2 B&lt;BR /&gt;;&lt;BR /&gt;run; &lt;BR /&gt;data D2;&lt;BR /&gt;input PROV$ sub$ ;&lt;BR /&gt;datalines;&lt;BR /&gt;001002 B&lt;BR /&gt;001003 A&lt;BR /&gt;001004 A&lt;/P&gt;
&lt;P&gt;;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;I want&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE style="border-collapse: collapse; width: 144pt;" border="0" width="192" cellspacing="0" cellpadding="0"&gt;
&lt;TBODY&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD width="64" height="20" style="height: 15.0pt; width: 48pt;"&gt;PROV&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;mes&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;sub&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The merge&lt;/P&gt;
&lt;P&gt;data d3; &lt;BR /&gt;merge d1 d2; &lt;BR /&gt;by prov;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;produces&lt;/P&gt;
&lt;TABLE style="border-collapse: collapse; width: 144pt;" border="0" width="192" cellspacing="0" cellpadding="0"&gt;
&lt;TBODY&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD width="64" height="20" style="height: 15.0pt; width: 48pt;"&gt;PROV&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;mes&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;sub&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;that I don't want.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank.&lt;/P&gt;</description>
    <pubDate>Wed, 28 Feb 2024 09:03:38 GMT</pubDate>
    <dc:creator>Elena</dc:creator>
    <dc:date>2024-02-28T09:03:38Z</dc:date>
    <item>
      <title>Merge many to one</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Merge-many-to-one/m-p/918162#M361678</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;I have this 2 dataset&lt;/P&gt;
&lt;P&gt;data D1;&lt;BR /&gt;input PROV$ mes sub$ ;&lt;BR /&gt;datalines;&lt;BR /&gt;001002 1 B&lt;BR /&gt;001002 2 B&lt;BR /&gt;001003 1 B&lt;BR /&gt;001003 2 B&lt;BR /&gt;001004 1 B&lt;BR /&gt;001004 2 B&lt;BR /&gt;;&lt;BR /&gt;run; &lt;BR /&gt;data D2;&lt;BR /&gt;input PROV$ sub$ ;&lt;BR /&gt;datalines;&lt;BR /&gt;001002 B&lt;BR /&gt;001003 A&lt;BR /&gt;001004 A&lt;/P&gt;
&lt;P&gt;;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;I want&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE style="border-collapse: collapse; width: 144pt;" border="0" width="192" cellspacing="0" cellpadding="0"&gt;
&lt;TBODY&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD width="64" height="20" style="height: 15.0pt; width: 48pt;"&gt;PROV&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;mes&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;sub&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The merge&lt;/P&gt;
&lt;P&gt;data d3; &lt;BR /&gt;merge d1 d2; &lt;BR /&gt;by prov;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;produces&lt;/P&gt;
&lt;TABLE style="border-collapse: collapse; width: 144pt;" border="0" width="192" cellspacing="0" cellpadding="0"&gt;
&lt;TBODY&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD width="64" height="20" style="height: 15.0pt; width: 48pt;"&gt;PROV&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;mes&lt;/TD&gt;
&lt;TD width="64" style="width: 48pt;"&gt;sub&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001002&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001003&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD height="20" style="height: 15.0pt;"&gt;001004&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;that I don't want.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thank.&lt;/P&gt;</description>
      <pubDate>Wed, 28 Feb 2024 09:03:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Merge-many-to-one/m-p/918162#M361678</guid>
      <dc:creator>Elena</dc:creator>
      <dc:date>2024-02-28T09:03:38Z</dc:date>
    </item>
    <item>
      <title>Re: Merge many to one</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Merge-many-to-one/m-p/918165#M361680</link>
      <description>&lt;P&gt;Below two data step options - with slightly different outcomes so use the one which returns what you need.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data D1;
  input PROV$ mes sub$;
  datalines;
001002 1 B
001002 2 B
001003 1 B
001003 2 B
001004 1 B
001004 2 B
001099 2 X
;
run;

data D2;
  input PROV$ sub$;
  datalines;
001002 B
001003 A
001004 A
;
run;

data d3;
  merge d1(drop=sub) d2;
  by prov;
run;

data want;
  set d1;
  if _n_=1 then
    do;
      dcl hash h1(dataset:'d2');
      h1.defineKey('prov');
      h1.defineData('sub');
      h1.defineDone();
    end;
  _rc=h1.find();
  drop _rc;
run;

proc print data=d3;
run;
proc print data=want;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Patrick_0-1709112405900.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/94181i9501389CF3B164ED/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Patrick_0-1709112405900.png" alt="Patrick_0-1709112405900.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 28 Feb 2024 09:39:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Merge-many-to-one/m-p/918165#M361680</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2024-02-28T09:39:29Z</dc:date>
    </item>
  </channel>
</rss>

