<?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 match two tables based on the processed company name in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/527621#M143879</link>
    <description>&lt;P&gt;dear all,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;why some of the observation cannot be matched?&lt;/P&gt;&lt;P&gt;I am trying to clean the company name&amp;nbsp;and&amp;nbsp;merge two&amp;nbsp;excel based on&amp;nbsp;the cleaned company name.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I process the excel&amp;nbsp;Step5.DATASTREAM_GB2&amp;nbsp; by following codes,&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Step3.Datastream_gb_export_2nd;
set Step5.Datastream_gb2;
COMPANY_NAME = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,COMPANY_NAME);
COMPANY_NAME_1 = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,COMPANY_NAME_1);
COMPANY_NAME___SHORT = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,COMPANY_NAME___SHORT);
PREVIOUS_NAME = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,PREVIOUS_NAME);
run;

data Step3.Datastream_gb_export_2nd;
  set Step3.Datastream_gb_export_2nd;
  if GEOGRAPHIC_DESCR_='NETHERLANDS' then do;
    COMPANY_NAME   = prxchange('s/(NV|N\.V\.)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(NV|N\.V\.)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(NV|N\.V\.)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(NV|N\.V\.)$//',1,trim(PREVIOUS_NAME));
  end;
  if GEOGRAPHIC_DESCR_='SWEDEN' then do;
    COMPANY_NAME   = prxchange('s/(AB)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(AB)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(AB)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(AB)$//',1,trim(PREVIOUS_NAME));
  end;
   if GEOGRAPHIC_DESCR_='FINLAND' then do;
    COMPANY_NAME   = prxchange('s/(AB|OYJ)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(AB|OYJ)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(AB|OYJ)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(AB|OYJ)$//',1,trim(PREVIOUS_NAME));
  end;
  if GEOGRAPHIC_DESCR_='ITALY' then do;
    COMPANY_NAME   = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(PREVIOUS_NAME));
  end;
    if GEOGRAPHIC_DESCR_='NORWAY' then do;
    COMPANY_NAME   = prxchange('s/(ASA)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(ASA)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(ASA)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(ASA)$//',1,trim(PREVIOUS_NAME));
  end;

run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;then match the processed&amp;nbsp;&lt;SPAN&gt;Step5.DATASTREAM_GB2 (i.e.,Step3.Datastream_gb_export_2nd) with&amp;nbsp;Step5.PATSTAT_GB2 by following codes,&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Step3.Datastream_gb_export_2nd;
set Step3.Datastream_gb_export_2nd;
run;

data Step3.Datastream_gb2;
  set Step2.Datastream_gb_export_2nd;
  rename name=psn_name;
run;

proc sort data= Step3.Datastream_gb2;
  by psn_name;
run;

proc sort data= Step5.PATSTAT_GB2;
  by psn_name;
run;

data STEP6.Datastream_Patstat1(keep=psn_name Type) step4.Patstat_gb_simple2 step3.Datastream_gb3;
   merge Step5.PATSTAT_GB2 (in=ina)
         Step3.Datastream_gb2 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat1;
   else if ina then output step4.Patstat_gb_simple2;
   else if inb then output step3.Datastream_gb3;
run;

data step3.Datastream_gb3;
  set step3.Datastream_gb3;
  drop psn_name;
  rename COMPANY_NAME=psn_name;
run;

proc sort data=step3.Datastream_gb3;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple2;
  by psn_name;
run;

data STEP6.Datastream_Patstat2(keep=psn_name Type) step4.Patstat_gb_simple3 step3.Datastream_gb4;
   merge step4.Patstat_gb_simple2 (in=ina)
         step3.Datastream_gb3 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat2;
   else if ina then output step4.Patstat_gb_simple3;
   else if inb then output step3.Datastream_gb4;
run;

data step3.Datastream_gb4;
  set step3.Datastream_gb4;
  drop psn_name;
  rename COMPANY_NAME_1=psn_name;
run;

proc sort data=step3.Datastream_gb4;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple3;
  by psn_name;
run;

data STEP6.Datastream_Patstat3(keep=psn_name Type) step4.Patstat_gb_simple4 step3.Datastream_gb5;
   merge step4.Patstat_gb_simple3 (in=ina)
         step3.Datastream_gb4 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat3;
   else if ina then output step4.Patstat_gb_simple4;
   else if inb then output step3.Datastream_gb5;
run;
data step3.Datastream_gb5;
  set step3.Datastream_gb5;
  drop psn_name;
  rename COMPANY_NAME___SHORT=psn_name;
run;

proc sort data=step3.Datastream_gb5;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple4;
  by psn_name;
run;

data STEP6.Datastream_Patstat4(keep=psn_name Type) step4.Patstat_gb_simple5 step3.Datastream_gb6;
   merge step4.Patstat_gb_simple4 (in=ina)
         step3.Datastream_gb5 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat4;
   else if ina then output step4.Patstat_gb_simple5;
   else if inb then output step3.Datastream_gb6;
run;
data step3.Datastream_gb6;
  set step3.Datastream_gb6;
  drop psn_name;
  rename PREVIOUS_NAME=psn_name;
run;

proc sort data=step3.Datastream_gb6;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple5;
  by psn_name;
run;

data STEP6.Datastream_Patstat5(keep=psn_name Type) step4.Patstat_gb_simple6 step3.Datastream_gb7;
   merge step4.Patstat_gb_simple5 (in=ina)
         step3.Datastream_gb6 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat5;
   else if ina then output step4.Patstat_gb_simple6;
   else if inb then output step3.Datastream_gb7;
run;

data step7.Datastream_patstat_match2;
set Step6.Datastream_patstat: ;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;however, some of the observations cannot be matched together even though they have been processed&amp;nbsp;and are same.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;for example,&amp;nbsp;the 'ALSTOM' in the processed table 'Step3.Datastream_gb_export_2nd'(i.e., the table has been added in the attachment as an excel'Datastream_gb_export_2nd.xlsx'), however, it cannot be matched with the same character 'ALSTOM' in the table'Step5.PATSTAT_GB2' (excel'DATASTREAM_GB2.xlsx')&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;could you please give me some suggestion about this?&amp;nbsp;why I cannot&amp;nbsp;merge them together?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;thanks in advance.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Wed, 16 Jan 2019 03:43:41 GMT</pubDate>
    <dc:creator>France</dc:creator>
    <dc:date>2019-01-16T03:43:41Z</dc:date>
    <item>
      <title>match two tables based on the processed company name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/527621#M143879</link>
      <description>&lt;P&gt;dear all,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;why some of the observation cannot be matched?&lt;/P&gt;&lt;P&gt;I am trying to clean the company name&amp;nbsp;and&amp;nbsp;merge two&amp;nbsp;excel based on&amp;nbsp;the cleaned company name.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I process the excel&amp;nbsp;Step5.DATASTREAM_GB2&amp;nbsp; by following codes,&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Step3.Datastream_gb_export_2nd;
set Step5.Datastream_gb2;
COMPANY_NAME = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,COMPANY_NAME);
COMPANY_NAME_1 = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,COMPANY_NAME_1);
COMPANY_NAME___SHORT = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,COMPANY_NAME___SHORT);
PREVIOUS_NAME = prxChange("s/,?\s*(incorporated|incorporation|INCORP|COMPANY|inco|inc|corporation|corp|limited|ltd|plc|ag|s\.a\.|sa)\.?\s*$//io",1,PREVIOUS_NAME);
run;

data Step3.Datastream_gb_export_2nd;
  set Step3.Datastream_gb_export_2nd;
  if GEOGRAPHIC_DESCR_='NETHERLANDS' then do;
    COMPANY_NAME   = prxchange('s/(NV|N\.V\.)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(NV|N\.V\.)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(NV|N\.V\.)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(NV|N\.V\.)$//',1,trim(PREVIOUS_NAME));
  end;
  if GEOGRAPHIC_DESCR_='SWEDEN' then do;
    COMPANY_NAME   = prxchange('s/(AB)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(AB)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(AB)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(AB)$//',1,trim(PREVIOUS_NAME));
  end;
   if GEOGRAPHIC_DESCR_='FINLAND' then do;
    COMPANY_NAME   = prxchange('s/(AB|OYJ)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(AB|OYJ)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(AB|OYJ)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(AB|OYJ)$//',1,trim(PREVIOUS_NAME));
  end;
  if GEOGRAPHIC_DESCR_='ITALY' then do;
    COMPANY_NAME   = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(SPA|S\.P\.A\.)$//',1,trim(PREVIOUS_NAME));
  end;
    if GEOGRAPHIC_DESCR_='NORWAY' then do;
    COMPANY_NAME   = prxchange('s/(ASA)$//',1,trim(COMPANY_NAME  ));
    COMPANY_NAME_1 = prxchange('s/(ASA)$//',1,trim(COMPANY_NAME_1));
	COMPANY_NAME___SHORT = prxchange('s/(ASA)$//',1,trim(COMPANY_NAME___SHORT));
	PREVIOUS_NAME = prxchange('s/(ASA)$//',1,trim(PREVIOUS_NAME));
  end;

run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;then match the processed&amp;nbsp;&lt;SPAN&gt;Step5.DATASTREAM_GB2 (i.e.,Step3.Datastream_gb_export_2nd) with&amp;nbsp;Step5.PATSTAT_GB2 by following codes,&lt;/SPAN&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data Step3.Datastream_gb_export_2nd;
set Step3.Datastream_gb_export_2nd;
run;

data Step3.Datastream_gb2;
  set Step2.Datastream_gb_export_2nd;
  rename name=psn_name;
run;

proc sort data= Step3.Datastream_gb2;
  by psn_name;
run;

proc sort data= Step5.PATSTAT_GB2;
  by psn_name;
run;

data STEP6.Datastream_Patstat1(keep=psn_name Type) step4.Patstat_gb_simple2 step3.Datastream_gb3;
   merge Step5.PATSTAT_GB2 (in=ina)
         Step3.Datastream_gb2 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat1;
   else if ina then output step4.Patstat_gb_simple2;
   else if inb then output step3.Datastream_gb3;
run;

data step3.Datastream_gb3;
  set step3.Datastream_gb3;
  drop psn_name;
  rename COMPANY_NAME=psn_name;
run;

proc sort data=step3.Datastream_gb3;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple2;
  by psn_name;
run;

data STEP6.Datastream_Patstat2(keep=psn_name Type) step4.Patstat_gb_simple3 step3.Datastream_gb4;
   merge step4.Patstat_gb_simple2 (in=ina)
         step3.Datastream_gb3 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat2;
   else if ina then output step4.Patstat_gb_simple3;
   else if inb then output step3.Datastream_gb4;
run;

data step3.Datastream_gb4;
  set step3.Datastream_gb4;
  drop psn_name;
  rename COMPANY_NAME_1=psn_name;
run;

proc sort data=step3.Datastream_gb4;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple3;
  by psn_name;
run;

data STEP6.Datastream_Patstat3(keep=psn_name Type) step4.Patstat_gb_simple4 step3.Datastream_gb5;
   merge step4.Patstat_gb_simple3 (in=ina)
         step3.Datastream_gb4 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat3;
   else if ina then output step4.Patstat_gb_simple4;
   else if inb then output step3.Datastream_gb5;
run;
data step3.Datastream_gb5;
  set step3.Datastream_gb5;
  drop psn_name;
  rename COMPANY_NAME___SHORT=psn_name;
run;

proc sort data=step3.Datastream_gb5;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple4;
  by psn_name;
run;

data STEP6.Datastream_Patstat4(keep=psn_name Type) step4.Patstat_gb_simple5 step3.Datastream_gb6;
   merge step4.Patstat_gb_simple4 (in=ina)
         step3.Datastream_gb5 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat4;
   else if ina then output step4.Patstat_gb_simple5;
   else if inb then output step3.Datastream_gb6;
run;
data step3.Datastream_gb6;
  set step3.Datastream_gb6;
  drop psn_name;
  rename PREVIOUS_NAME=psn_name;
run;

proc sort data=step3.Datastream_gb6;
  by psn_name;
run;

proc sort data=step4.Patstat_gb_simple5;
  by psn_name;
run;

data STEP6.Datastream_Patstat5(keep=psn_name Type) step4.Patstat_gb_simple6 step3.Datastream_gb7;
   merge step4.Patstat_gb_simple5 (in=ina)
         step3.Datastream_gb6 (in=inb)
   ;
   by psn_name;
   if ina and inb then output STEP6.Datastream_Patstat5;
   else if ina then output step4.Patstat_gb_simple6;
   else if inb then output step3.Datastream_gb7;
run;

data step7.Datastream_patstat_match2;
set Step6.Datastream_patstat: ;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;however, some of the observations cannot be matched together even though they have been processed&amp;nbsp;and are same.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;for example,&amp;nbsp;the 'ALSTOM' in the processed table 'Step3.Datastream_gb_export_2nd'(i.e., the table has been added in the attachment as an excel'Datastream_gb_export_2nd.xlsx'), however, it cannot be matched with the same character 'ALSTOM' in the table'Step5.PATSTAT_GB2' (excel'DATASTREAM_GB2.xlsx')&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;could you please give me some suggestion about this?&amp;nbsp;why I cannot&amp;nbsp;merge them together?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;thanks in advance.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 16 Jan 2019 03:43:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/527621#M143879</guid>
      <dc:creator>France</dc:creator>
      <dc:date>2019-01-16T03:43:41Z</dc:date>
    </item>
    <item>
      <title>Re: match two tables based on the processed company name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/527628#M143885</link>
      <description>&lt;P&gt;If they don't match then they are not both "ALSTOM" - perhaps neither of them are.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Perhaps you have whitespace characters that are not true blanks.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I would read the data from each source, find the unmatched name, and then write out the values to the login using format $x.&amp;nbsp; (where&amp;nbsp;x is the longest possible length of the name variable), and also a second time using $HEXy., where y=2x.&amp;nbsp; See if the $HEXy. values are the same from both sources.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data _null_;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; set unmatched_source1;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; put 'Source1: ' name=$40.&amp;nbsp;/ name=$hex80.;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; set unmatched_source2;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; put 'Source2: ' name=$40. / name=$hex80.;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;</description>
      <pubDate>Wed, 16 Jan 2019 04:35:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/527628#M143885</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2019-01-16T04:35:18Z</dc:date>
    </item>
    <item>
      <title>Re: match two tables based on the processed company name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/528587#M144292</link>
      <description>dear mkeintz,&lt;BR /&gt;&lt;BR /&gt;thanks for your advice.&lt;BR /&gt;&lt;BR /&gt;could you please explain it more clearly. I am a beginner at SAS and not very understand. What is the meaning of 'unmatched_source', 'Source' ? could you please explain it by using the sample?&lt;BR /&gt;&lt;BR /&gt;thanks in advance.</description>
      <pubDate>Sun, 20 Jan 2019 01:03:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/528587#M144292</guid>
      <dc:creator>France</dc:creator>
      <dc:date>2019-01-20T01:03:12Z</dc:date>
    </item>
    <item>
      <title>Re: match two tables based on the processed company name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/528593#M144296</link>
      <description>&lt;P&gt;When you do the initial match you should generate 3 result data sets:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;The set of matched records.&lt;/LI&gt;
&lt;LI&gt;The unmatched records from source1&amp;nbsp;&amp;nbsp; ("unmatched_source1")&lt;/LI&gt;
&lt;LI&gt;The unmatched records from source2&amp;nbsp; ("unmatched_source2");&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It's the contents of data sets 2 and 3 then I recommend you examine for whitespace that is not a true blank.&amp;nbsp; For instance, you apparently have an "ALSTOM" record in both original data sets.&amp;nbsp; But they don't match, so&amp;nbsp;one should end up in unmatched_source1, and the other in unmatched_source2.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I think in your last data step you use the names &lt;STRONG&gt;step4.Patstat_gb_simple6&lt;/STRONG&gt; and &lt;STRONG&gt;step3.Datastream_gb7&lt;/STRONG&gt;.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sun, 20 Jan 2019 01:49:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/match-two-tables-based-on-the-processed-company-name/m-p/528593#M144296</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2019-01-20T01:49:38Z</dc:date>
    </item>
  </channel>
</rss>

