<?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: SQL query returns duplicates in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676819#M204100</link>
    <description>The OR condition is likely making it possible to join to the same row multiple times....I suspect you'll need to either modify that join condition somehow or do it in multiple steps to avoid duplicates and matching records that are already matched.&lt;BR /&gt;You are also using a cross join which is inefficient.</description>
    <pubDate>Fri, 14 Aug 2020 17:55:05 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2020-08-14T17:55:05Z</dc:date>
    <item>
      <title>SQL query returns duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676812#M204098</link>
      <description>&lt;P&gt;I'm querying an Oracle database and need to use SQL.&amp;nbsp; I'm trying to pull records from the oracle database where the year of birth is either 2019 or 2020 AND (match either DOB&amp;nbsp;OR&amp;nbsp;first name OR&amp;nbsp;last name OR&amp;nbsp;mother's last) from records in a SAS dataset.&amp;nbsp; When I do this I get duplicate records (in the millions) when I'd like to get only one distinct record even when the same record meets the where criteria for multiple records in the SAS dataset.&amp;nbsp; Any help is appreciated.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
	create table OUTPUT as
	select 
		a.ID as CERTIFICATEID label='CERTIFICATEID', a.BIRTH_ID, 
		a.SEALED, a.CREATE_DATE,
		datepart(a.BIRTH_DATE) as B_DOB label='B_DOB' format=mmddyy10., a.CHILD_SEX as B_SEX label='B_SEX', 
		a.CHILD_NAME_FIRST as B_NAME_FIRST label='B_NAME_FIRST', a.CHILD_NAME_MIDDLE as B_NAME_MIDDLE label='B_NAME_MIDDLE', a.CHILD_NAME_LAST as B_NAME_LAST label='B_NAME_LAST', 
		a.PARENT_1_NAME_FIRST as B_NAME_FIRST_FATHER label='B_NAME_FIRST_FATHER', a.PARENT_1_NAME_MIDDLE as B_NAME_MIDDLE_FATHER label='B_NAME_MIDDLE_FATHER', a.PARENT_1_NAME_LAST as B_NAME_LAST_FATHER label='B_NAME_LAST_FATHER', 
		a.PARENT_2_NAME_FIRST as B_NAME_FIRST_MOTHER label='B_NAME_FIRST_MOTHER', a.PARENT_2_NAME_MIDDLE as B_NAME_MIDDLE_MOTHER label='B_NAME_MIDDLE_MOTHER', a.PARENT_2_NAME_LAST as B_NAME_LAST_MOTHER label='B_NAME_LAST_MOTHER'
	from ORACLE.TABLE as a, SAS_DATASET as e
	where 
		year(datepart(a.BIRTH_DATE)) in (2020 2019) /* Do not include if not state registered*/
		AND
		(
		a.CHILD_NAME_FIRST=e.D_NAME_FIRST OR
		a.CHILD_NAME_LAST=e.D_NAME_LAST OR
		put(datepart(a.BIRTH_DATE),mmddyy10.)=e.D_DOB OR
		a.PARENT_2_NAME_FIRST=e.D_NAME_FIRST_MOTHER
		)
	;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 14 Aug 2020 17:42:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676812#M204098</guid>
      <dc:creator>Ryanb2</dc:creator>
      <dc:date>2020-08-14T17:42:20Z</dc:date>
    </item>
    <item>
      <title>Re: SQL query returns duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676819#M204100</link>
      <description>The OR condition is likely making it possible to join to the same row multiple times....I suspect you'll need to either modify that join condition somehow or do it in multiple steps to avoid duplicates and matching records that are already matched.&lt;BR /&gt;You are also using a cross join which is inefficient.</description>
      <pubDate>Fri, 14 Aug 2020 17:55:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676819#M204100</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2020-08-14T17:55:05Z</dc:date>
    </item>
    <item>
      <title>Re: SQL query returns duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676849#M204106</link>
      <description>&lt;P&gt;Try the DISTINCT keyword in your SELECT for unique rows across all columns:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &lt;SPAN class="token keyword"&gt;select&lt;/SPAN&gt; &lt;STRONG&gt;distinct&lt;/STRONG&gt; &lt;BR /&gt;a&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;ID &lt;SPAN class="token keyword"&gt;as&lt;/SPAN&gt; CERTIFICATEID label&lt;SPAN class="token operator"&gt;=&lt;/SPAN&gt;&lt;SPAN class="token string"&gt;'CERTIFICATEID'&lt;/SPAN&gt;&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; a&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;BIRTH_ID&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; &lt;BR /&gt;a&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;SEALED&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt; a&lt;SPAN class="token punctuation"&gt;.&lt;/SPAN&gt;CREATE_DATE&lt;SPAN class="token punctuation"&gt;,&lt;/SPAN&gt;&lt;BR /&gt;...&lt;/P&gt;</description>
      <pubDate>Fri, 14 Aug 2020 19:29:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676849#M204106</guid>
      <dc:creator>KathyKiraly</dc:creator>
      <dc:date>2020-08-14T19:29:54Z</dc:date>
    </item>
    <item>
      <title>Re: SQL query returns duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676878#M204111</link>
      <description>&lt;P&gt;That did it!&amp;nbsp; Thanks.&amp;nbsp; I also changed it to a left join but kept the where statement as is.&amp;nbsp; Much appreciated.&lt;/P&gt;</description>
      <pubDate>Fri, 14 Aug 2020 20:33:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676878#M204111</guid>
      <dc:creator>Ryanb2</dc:creator>
      <dc:date>2020-08-14T20:33:30Z</dc:date>
    </item>
    <item>
      <title>Re: SQL query returns duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676879#M204112</link>
      <description>You need to mark the solution as correct, not your response.</description>
      <pubDate>Fri, 14 Aug 2020 20:34:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676879#M204112</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2020-08-14T20:34:48Z</dc:date>
    </item>
    <item>
      <title>Re: SQL query returns duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676884#M204115</link>
      <description>&lt;P&gt;Oops!&amp;nbsp; Sorry.&amp;nbsp; How do correct this?&lt;/P&gt;</description>
      <pubDate>Fri, 14 Aug 2020 20:50:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SQL-query-returns-duplicates/m-p/676884#M204115</guid>
      <dc:creator>Ryanb2</dc:creator>
      <dc:date>2020-08-14T20:50:16Z</dc:date>
    </item>
  </channel>
</rss>

