<?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: Left join not keeping all records from left hand table in SAS Data Science</title>
    <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176735#M2061</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try two joining conditions separately to check the overlap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select * from a left join b on &lt;/P&gt;&lt;P&gt;a.code = b.code ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select * from a left join b on &lt;/P&gt;&lt;P&gt;a.code2 = b.code2 ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 27 Aug 2014 03:41:55 GMT</pubDate>
    <dc:creator>stat_sas</dc:creator>
    <dc:date>2014-08-27T03:41:55Z</dc:date>
    <item>
      <title>Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176731#M2057</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have a left join like this:&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select * from a left join b on &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case when a.code &amp;lt;&amp;gt; "" then a.code = b.code&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else a.code2 =&amp;nbsp; b.code2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;Basically join a to b on code if it is non null in A else join A to B on code2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Problem is that A has 100 rows but output has 90 rows only.&lt;/P&gt;&lt;P&gt;Why is this?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 00:47:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176731#M2057</guid>
      <dc:creator>eagles_dare13</dc:creator>
      <dc:date>2014-08-27T00:47:01Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176732#M2058</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hmm puzzling...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tried toying with a small example and can't get the join to drop obs from A. Can you post a trimmed down version of your data that causes at least one obs from A to be dropped from the join result? - PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 02:23:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176732#M2058</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2014-08-27T02:23:01Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176733#M2059</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&amp;lt;&amp;gt; is not NOT EQUALS in SAS, it's MAX I believe.&lt;/P&gt;&lt;P&gt;Try using NE.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 03:02:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176733#M2059</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2014-08-27T03:02:38Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176734#M2060</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;A __default_attr="255172" __jive_macro_name="user" class="jive_macro jive_macro_user" href="https://communities.sas.com/"&gt;&lt;/A&gt;, when you run the query as written you get:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;150&amp;nbsp; proc sql;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;151&amp;nbsp; select * from a left join b on&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;152&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;153&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; case when a.code &amp;lt;&amp;gt; "" then a.code = b.code&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;154&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; else a.code2 =&amp;nbsp; b.code2&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;155&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; end&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;157&amp;nbsp; ;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;NOTE: The "&amp;lt;&amp;gt;" operator is interpreted as "not equals".&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;NOTE: The execution of this query involves performing one or more Cartesian product&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; joins that can not be optimized.&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #0000ff;"&gt;&lt;STRONG&gt;158&amp;nbsp; quit;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In the small examples I tried, the join worked as expected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 03:09:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176734#M2060</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2014-08-27T03:09:26Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176735#M2061</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Try two joining conditions separately to check the overlap.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select * from a left join b on &lt;/P&gt;&lt;P&gt;a.code = b.code ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select * from a left join b on &lt;/P&gt;&lt;P&gt;a.code2 = b.code2 ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 03:41:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176735#M2061</guid>
      <dc:creator>stat_sas</dc:creator>
      <dc:date>2014-08-27T03:41:55Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176736#M2062</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would agree with &lt;A href="mailto:stat@sas"&gt;stat@sas&lt;/A&gt;, check the data first.&amp;nbsp; Personally I wouldn't go with the kind of coding which has case statements in a join like that.&amp;nbsp; Me I would (without being able to test as having no test data) do:&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table WANT as&lt;/P&gt;&lt;P&gt;&amp;nbsp; select&amp;nbsp; *&lt;/P&gt;&lt;P&gt;&amp;nbsp; from&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;&amp;nbsp; left join B&lt;/P&gt;&lt;P&gt;&amp;nbsp; on&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (A.CODE &amp;lt;&amp;gt; "" and A.CODE=B.CODE)&lt;/P&gt;&lt;P&gt;&amp;nbsp; or&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (A.CODE="" and A.CODE2=B.CODE2);&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 08:42:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176736#M2062</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-08-27T08:42:16Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176737#M2063</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I the OP's question involving a RDBMS? The Null in a RDBMS (three value logic) is not the same as a missing in SAS. The space as missing value is assumed to be logical equal and can cause some weird effects&lt;/P&gt;&lt;P&gt;Seeing the "&amp;lt;&amp;gt;" operator it could be translated a NE. What says it is producing a "Cartesian product". Theoretically that can solve anything but is assuming unlimited speed and unlimited other resources when the data grows.&lt;BR /&gt;With some tests using sas-datasets I can get more records then the original (a count). Did not succeed in getting in less records.&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 12:40:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176737#M2063</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2014-08-27T12:40:36Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176738#M2064</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks. Posting the data is not possible ...i will get into all kinds of data confidentiality issues.&lt;/P&gt;&lt;P&gt;I did&amp;nbsp; this in DI studio and i saw DIS rewrote the code like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select * from a left join b on &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case when a.code &amp;lt;&amp;gt; "" then a.code = b.code&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else a.code2 =&amp;nbsp; b.code2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/P&gt;&lt;P&gt;where&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case when a.code &amp;lt;&amp;gt; "" then a.code = b.code&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else a.code2 =&amp;nbsp; b.code2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can that be a possible reason?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 14:53:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176738#M2064</guid>
      <dc:creator>eagles_dare13</dc:creator>
      <dc:date>2014-08-27T14:53:45Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176739#M2065</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Well, I suppose there's a good illustration of why "Visual Coding" isn't necessarily the best way to do coding.&amp;nbsp; What it appears to be doing is to work out what your doing wrong and try to fix it.&amp;nbsp; My advice, think about what you want out at the end, where that data will come from, then manipulations involved.&amp;nbsp; Then its simply a matter of putting the bits together.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 15:05:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176739#M2065</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2014-08-27T15:05:16Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176740#M2066</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The di generation of code does not given an answer whether is an external RDBMS or not. It is often generating&amp;nbsp; common SAS code. &lt;BR /&gt;The effects of an implicit pass through SQL translation is not shown. Is it an exterenal DBMS?&lt;/P&gt;&lt;P&gt;The number of records is relative low (100/90). Is there a test to define and sashelp.datasets that shows the effect.&lt;BR /&gt;Did the code run and where there special messages (log)?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 15:40:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176740#M2066</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2014-08-27T15:40:25Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176741#M2067</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Yes, of course, the WHERE clause will eliminate the cases where there is no match on CODE and on CODE2. Compare results from the following:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data a;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;length code code2 $1;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;input code code2 x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;datalines;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;a a 1&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;b . 2&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;. c 3&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;. . 4&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;d . 5&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;. d 6&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;d c 7&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;b d 8&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data b;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;length code code2 $1;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;input code code2 x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;datalines;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;a a 1&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;b . 2&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;. c 3&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;. . 4&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;title "Original query";&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc sql;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;select * from a left join b on&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case when a.code &amp;lt;&amp;gt; "" then a.code = b.code &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else a.code2 =&amp;nbsp; b.code2&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;quit;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;title "Generated query";&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc sql;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;select * from a left join b on&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case when a.code &amp;lt;&amp;gt; "" then a.code = b.code &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else a.code2 =&amp;nbsp; b.code2&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;where&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case when a.code &amp;lt;&amp;gt; "" then a.code = b.code &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else a.code2 =&amp;nbsp; b.code2&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; )&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 16:40:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176741#M2067</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2014-08-27T16:40:40Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176742#M2068</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Pgstars I did a same like test.&amp;nbsp; but kept the numbers separated and ordered them on the first table.&lt;/P&gt;&lt;P&gt;Result:&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;a a 1 a a 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;b&amp;nbsp;&amp;nbsp; 2 b&amp;nbsp;&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp; c 3&amp;nbsp;&amp;nbsp; c 3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 b&amp;nbsp;&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;d&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp; d 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;d c 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;b d 8 b&amp;nbsp;&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: arial,helvetica,sans-serif;"&gt;No one in the input records of the table a is missing, it is a left-join. One repetition on each side 3 non joined. &lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 18:00:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176742#M2068</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2014-08-27T18:00:41Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176743#M2069</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;That's the result I get from the first query above. The second query returns only 6 records in my tests. Records where x = 5, 6, and 7 are missing. - PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 18:20:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176743#M2069</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2014-08-27T18:20:23Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176744#M2070</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The first code of eagles dare is joining on several conditions in one pass. That was my the focus on.&lt;/P&gt;&lt;P&gt;The second query as generated by DI is different the results are (correct indicated by PG) :&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;a a 1 a a 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;b&amp;nbsp;&amp;nbsp; 2 b&amp;nbsp;&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp; c 3&amp;nbsp;&amp;nbsp; c 3&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 b&amp;nbsp;&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: courier new,courier;"&gt;b d 8 b&amp;nbsp;&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 18:45:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176744#M2070</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2014-08-27T18:45:42Z</dc:date>
    </item>
    <item>
      <title>Re: Left join not keeping all records from left hand table</title>
      <link>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176745#M2071</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok question is not on the original Sql querey but what DI studio is doing with joins and generating code.&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/etlug/65920/HTML/default/viewer.htm#p15rvjcoy7952ln1txgxuxlrscdn.htm" title="http://support.sas.com/documentation/cdl/en/etlug/65920/HTML/default/viewer.htm#p15rvjcoy7952ln1txgxuxlrscdn.htm"&gt;SAS(R) Data Integration Studio 4.7: User's Guide&lt;/A&gt;&amp;nbsp; In the mentioned case it should not generated the second part with the where.&amp;nbsp; &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Aug 2014 19:02:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Science/Left-join-not-keeping-all-records-from-left-hand-table/m-p/176745#M2071</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2014-08-27T19:02:10Z</dc:date>
    </item>
  </channel>
</rss>

