<?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 selecting common id in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323944#M71858</link>
    <description>&lt;P&gt;I have the below dataset.&amp;nbsp; Acctnbr is the customer current number.&amp;nbsp; Vintage_id is a derived field pulling from several different possible cross reference account ids accross different systems.&amp;nbsp; I want to get a common 'cust_id' from this table.&amp;nbsp; I tried to do min or max(vintage_id) group by acctnbr but it is not consistent.&amp;nbsp; In this example I would want the vintage_id ending in 2532 to be the customer id for each acctnbr because it is the only one that goes with all three acctnbr's.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Have:&lt;/P&gt;
&lt;TABLE width="242"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="121"&gt;ACCTNBR&lt;/TD&gt;
&lt;TD width="121"&gt;VINTAGE_ID&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Want:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="242"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="121"&gt;ACCTNBR&lt;/TD&gt;
&lt;TD width="121"&gt;cust_id&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If there are multiple vintage_id's that match each acctnbr it doesn't matter which one is selected.&amp;nbsp; I suppose I would prefer a min to stay consistent but it is arbitrary.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any thoughts or suggestions on how to do this?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;edit:&amp;nbsp; This comes from a very large file with 100 million+ of acctnbrs, the number of acctnbrs and vintage_id's per acctnbr will not be consistent&lt;/P&gt;</description>
    <pubDate>Wed, 11 Jan 2017 15:11:10 GMT</pubDate>
    <dc:creator>Steelers_In_DC</dc:creator>
    <dc:date>2017-01-11T15:11:10Z</dc:date>
    <item>
      <title>selecting common id</title>
      <link>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323944#M71858</link>
      <description>&lt;P&gt;I have the below dataset.&amp;nbsp; Acctnbr is the customer current number.&amp;nbsp; Vintage_id is a derived field pulling from several different possible cross reference account ids accross different systems.&amp;nbsp; I want to get a common 'cust_id' from this table.&amp;nbsp; I tried to do min or max(vintage_id) group by acctnbr but it is not consistent.&amp;nbsp; In this example I would want the vintage_id ending in 2532 to be the customer id for each acctnbr because it is the only one that goes with all three acctnbr's.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Have:&lt;/P&gt;
&lt;TABLE width="242"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="121"&gt;ACCTNBR&lt;/TD&gt;
&lt;TD width="121"&gt;VINTAGE_ID&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Want:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="242"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="121"&gt;ACCTNBR&lt;/TD&gt;
&lt;TD width="121"&gt;cust_id&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If there are multiple vintage_id's that match each acctnbr it doesn't matter which one is selected.&amp;nbsp; I suppose I would prefer a min to stay consistent but it is arbitrary.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any thoughts or suggestions on how to do this?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;edit:&amp;nbsp; This comes from a very large file with 100 million+ of acctnbrs, the number of acctnbrs and vintage_id's per acctnbr will not be consistent&lt;/P&gt;</description>
      <pubDate>Wed, 11 Jan 2017 15:11:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323944#M71858</guid>
      <dc:creator>Steelers_In_DC</dc:creator>
      <dc:date>2017-01-11T15:11:10Z</dc:date>
    </item>
    <item>
      <title>Re: selecting common id</title>
      <link>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323949#M71860</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/30712"&gt;@Steelers_In_DC&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;If there are multiple vintage_id's that match each acctnbr it doesn't matter which one is selected.&amp;nbsp; I suppose I would prefer a min to stay consistent but it is arbitrary.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;By "min" do you mean the minimum numeric value of the vintage_id or the minimum count?&lt;/P&gt;</description>
      <pubDate>Wed, 11 Jan 2017 15:13:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323949#M71860</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2017-01-11T15:13:52Z</dc:date>
    </item>
    <item>
      <title>Re: selecting common id</title>
      <link>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323951#M71861</link>
      <description>&lt;P&gt;When I wrote it I was thinking min numeric value, but if min/max count is more efficient I would just as soon go with that.&lt;/P&gt;</description>
      <pubDate>Wed, 11 Jan 2017 15:17:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323951#M71861</guid>
      <dc:creator>Steelers_In_DC</dc:creator>
      <dc:date>2017-01-11T15:17:10Z</dc:date>
    </item>
    <item>
      <title>Re: selecting common id</title>
      <link>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323964#M71863</link>
      <description>&lt;P&gt;I am trying this on my own and ran into another situation.&amp;nbsp; I apologize for not having thought of this before.&amp;nbsp; If there are two options for cust_id I would need to select the one with the min(opendate) to get the earliest record.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="316"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="121"&gt;ACCTNBR&lt;/TD&gt;
&lt;TD width="121"&gt;VINTAGE_ID&lt;/TD&gt;
&lt;TD width="74"&gt;OPENDATE&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;07Jun2013&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;25Nov2015&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;25Nov2015&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;25Nov2015&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963130842532&lt;/TD&gt;
&lt;TD&gt;07Jun2013&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963138028183&lt;/TD&gt;
&lt;TD&gt;07Jun2013&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;4311963139332832&lt;/TD&gt;
&lt;TD&gt;07Jun2013&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
      <pubDate>Wed, 11 Jan 2017 15:56:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/323964#M71863</guid>
      <dc:creator>Steelers_In_DC</dc:creator>
      <dc:date>2017-01-11T15:56:27Z</dc:date>
    </item>
    <item>
      <title>Re: selecting common id</title>
      <link>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/324018#M71871</link>
      <description>&lt;P&gt;The solution I found:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;proc sql;&lt;BR /&gt;create table vintage_id as &lt;BR /&gt;select distinct a.acctnbr,a.vintage_id,b.opendate &lt;BR /&gt;from start a left join&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; start b on&lt;BR /&gt;a.vintage_id = b.acctnbr&lt;BR /&gt;order by acctnbr,opendate;&lt;BR /&gt;&lt;BR /&gt;/*Transpose step will pull the most recent opendate into col1, this will be used for cust_id*/&lt;BR /&gt;&lt;BR /&gt;proc transpose data=vintage_id out=tran_vintage(rename=(col1=cust_id)drop=_NAME_ );by acctnbr;var vintage_id;&lt;/P&gt;</description>
      <pubDate>Wed, 11 Jan 2017 18:22:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/selecting-common-id/m-p/324018#M71871</guid>
      <dc:creator>Steelers_In_DC</dc:creator>
      <dc:date>2017-01-11T18:22:52Z</dc:date>
    </item>
  </channel>
</rss>

