<?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: Compare two variables list in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207306#M38549</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Its a good idea to put your test data as a datastep.&amp;nbsp; Form that I haven't tested this, but something like:&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table FALLOUT as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; distinct COALESCE(A.VAR,B.VAR) as VAR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HAVE A&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; full join&amp;nbsp;&amp;nbsp; HAVE2 B&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; on&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A.VAR != B.VAR;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 21 Jul 2015 13:57:37 GMT</pubDate>
    <dc:creator>RW9</dc:creator>
    <dc:date>2015-07-21T13:57:37Z</dc:date>
    <item>
      <title>Compare two variables list</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207305#M38548</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Experts,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-size: 13.3333330154419px;"&gt;I have 2 datasets - file1 and file2. I want to compare the text appeared in variable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;File1:&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" width="64"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD height="20" width="64"&gt;Variable&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;A&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;B&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;C&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;D&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;E&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;F&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;&lt;P&gt;G&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;File2&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" width="64"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD height="20" width="64"&gt;Variable&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;A&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;B&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;D&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;E&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="20"&gt;G&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10pt; line-height: 1.5em;"&gt;I want the macro to return "C and F not found" based on the data shown above. If no mismatch found, it should return "No mismatch".&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Jul 2015 13:49:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207305#M38548</guid>
      <dc:creator>Ujjawal</dc:creator>
      <dc:date>2015-07-21T13:49:28Z</dc:date>
    </item>
    <item>
      <title>Re: Compare two variables list</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207306#M38549</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Its a good idea to put your test data as a datastep.&amp;nbsp; Form that I haven't tested this, but something like:&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; create table FALLOUT as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; distinct COALESCE(A.VAR,B.VAR) as VAR&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HAVE A&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; full join&amp;nbsp;&amp;nbsp; HAVE2 B&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; on&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A.VAR != B.VAR;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Jul 2015 13:57:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207306#M38549</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2015-07-21T13:57:37Z</dc:date>
    </item>
    <item>
      <title>Re: Compare two variables list</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207307#M38550</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Check SQL operator&amp;nbsp;&amp;nbsp; EXCEPT&amp;nbsp; and INTERSECT .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 21 Jul 2015 14:47:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207307#M38550</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2015-07-21T14:47:56Z</dc:date>
    </item>
    <item>
      <title>Re: Compare two variables list</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207308#M38551</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You said you wanted a macro, so here's my go at it....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* create the 2 tables: */&lt;/P&gt;&lt;P&gt;data one; length VAR $ 1;&lt;BR /&gt;input VAR&amp;nbsp; @@;&lt;BR /&gt;cards;&lt;BR /&gt;A B C D E F G H I&lt;BR /&gt;run;&lt;BR /&gt;data two; length VAR $ 1;&lt;BR /&gt;input VAR @@;&lt;BR /&gt;cards;&lt;BR /&gt;A B C D E F G H&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;/* create a table, ONE_ONLY, that has obs where VAR values are in ONE, but not TWO */&lt;BR /&gt;proc sql noprint;&lt;BR /&gt;create table ONE_ONLY as &lt;BR /&gt;select * &lt;BR /&gt;from ONE&lt;BR /&gt;LEFT JOIN&lt;BR /&gt;TWO&lt;BR /&gt;ON one.VAR = two.VAR&lt;BR /&gt;WHERE one.VAR ^= two.VAR ;&lt;BR /&gt;/* Now, put those values of VAR into a macro VAR1 */&lt;BR /&gt;select distinct VAR into :var1 separated by ' '&lt;BR /&gt;from work.ONE_ONLY ;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;/* test to see if VAR1 exists. If so, then write the values that mis-matched. */&lt;BR /&gt;/* if not, then var1 not created, so no mis-matches&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;BR /&gt;%macro test;&lt;BR /&gt;%let MACs = %symexist(var1); &lt;BR /&gt;%if &amp;amp;MACs = 0 %then &lt;BR /&gt; %put NO MISMATCH; &lt;BR /&gt;%else &lt;BR /&gt; %put These Values are in ONE, but not TWO: &amp;amp;var1 ;&lt;BR /&gt;%mend test;&lt;/P&gt;&lt;P&gt;%test&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Some NOTES:&lt;/P&gt;&lt;P&gt;1) the code only looks for VAR values in ONE that are not in TWO. You can edit to make another table, TWO_ONLY, where VAR values are in TWO, but not ONE. (and even a table BOTH, where values are matched).&lt;/P&gt;&lt;P&gt;2) Make sure you don't have a macro variable &amp;amp;VAR1 already created. If you run this code multiple times to test it (changing the inputs in TWO),&amp;nbsp; you should probably do a&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; %symdel var1 ;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; to remove/delete the macro before running PROC SQL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 22 Jul 2015 20:39:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Compare-two-variables-list/m-p/207308#M38551</guid>
      <dc:creator>Tommywhosc</dc:creator>
      <dc:date>2015-07-22T20:39:34Z</dc:date>
    </item>
  </channel>
</rss>

