<?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: Small query in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854273#M337609</link>
    <description>&lt;P&gt;Hi Peter,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It may not matter much in practice, but I would change the HAVING clause from&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;having sum(Diagnosis = 'Diabetes') &amp;gt;= 2&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;to&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;having count(*) &amp;gt;= 2&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;as the diagnoses selected with the WHERE clause are already "Diabetes".&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This will make the code a bit simpler, and if you change the diagnosis to check for, you only have to change the code in the WHERE clause (it may also run slightly faster, but I doubt that will matter much).&lt;/P&gt;</description>
    <pubDate>Wed, 18 Jan 2023 07:24:06 GMT</pubDate>
    <dc:creator>s_lassen</dc:creator>
    <dc:date>2023-01-18T07:24:06Z</dc:date>
    <item>
      <title>Small query</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854269#M337605</link>
      <description>&lt;P&gt;Hi All;&lt;/P&gt;&lt;P&gt;Please help me in the program code for the below query:-&lt;/P&gt;&lt;P&gt;Write a SAS query to select records of patients who have at least two diagnoses of diabetes in the calendar year.&lt;/P&gt;&lt;P&gt;Input data sample:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Pat Id&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Diagnosis&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Date&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1001&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;RA&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1-Jan-22&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1001&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Diabetes&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;12-Jan-22&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1001&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Diabetes&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1-Mar-22&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1002&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;IBD&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;4-Jan-22&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1002&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Diabetes&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;14-Jan-22&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can anyone please tell me the program code to get the output below like:-&lt;/P&gt;&lt;P&gt;Output data sample:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Pat Id&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Diagnosis&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Year&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1001&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Diabetes&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;2022&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jan 2023 06:17:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854269#M337605</guid>
      <dc:creator>saitejaguduru97</dc:creator>
      <dc:date>2023-01-18T06:17:09Z</dc:date>
    </item>
    <item>
      <title>Re: Small query</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854271#M337607</link>
      <description>&lt;P&gt;Try this&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input PatId $ Diagnosis $ Date :anydtdte.;
format Date date9.;
datalines;
1001 RA       1-Jan-22  
1001 Diabetes 12-Jan-22 
1001 Diabetes 1-Mar-22  
1002 IBD      4-Jan-22  
1002 Diabetes 14-Jan-22 
;

proc sql;
   create table want as
   select distinct PatId 
        , Diagnosis
        , year(Date) as Year

   from have
   where Diagnosis = 'Diabetes'
   group by PatID

   having sum(Diagnosis = 'Diabetes') &amp;gt;= 2
   ;

quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 18 Jan 2023 06:58:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854271#M337607</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2023-01-18T06:58:55Z</dc:date>
    </item>
    <item>
      <title>Re: Small query</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854273#M337609</link>
      <description>&lt;P&gt;Hi Peter,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;It may not matter much in practice, but I would change the HAVING clause from&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;having sum(Diagnosis = 'Diabetes') &amp;gt;= 2&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;to&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;having count(*) &amp;gt;= 2&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;as the diagnoses selected with the WHERE clause are already "Diabetes".&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This will make the code a bit simpler, and if you change the diagnosis to check for, you only have to change the code in the WHERE clause (it may also run slightly faster, but I doubt that will matter much).&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jan 2023 07:24:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854273#M337609</guid>
      <dc:creator>s_lassen</dc:creator>
      <dc:date>2023-01-18T07:24:06Z</dc:date>
    </item>
    <item>
      <title>Re: Small query</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854274#M337610</link>
      <description>&lt;P&gt;Thank you for the reply!!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there any possibility to get it in the SAS programming instead of SQL?&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jan 2023 07:44:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854274#M337610</guid>
      <dc:creator>saitejaguduru97</dc:creator>
      <dc:date>2023-01-18T07:44:37Z</dc:date>
    </item>
    <item>
      <title>Re: Small query</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854277#M337612</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/76464"&gt;@s_lassen&lt;/a&gt;&amp;nbsp;, agree. I wrote the having stuff before realizing that only 1 obs with the 'Diabetes' Diagnosis should be output &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jan 2023 07:50:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854277#M337612</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2023-01-18T07:50:18Z</dc:date>
    </item>
    <item>
      <title>Re: Small query</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854279#M337614</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/434763"&gt;@saitejaguduru97&lt;/a&gt;&amp;nbsp;, if you mean a Data Step instead of a Proc SQL Step, here is one.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input PatId $ Diagnosis $ Date :anydtdte.;
format Date date9.;
datalines;
1001 RA       1-Jan-22  
1001 Diabetes 12-Jan-22 
1001 Diabetes 1-Mar-22  
1002 IBD      4-Jan-22  
1002 Diabetes 14-Jan-22 
;

data want(drop = c);
   set have;
   by PatId Date groupformat;
   where Diagnosis = 'Diabetes';

   if first.Date then c = 0;
   c + 1;

   if last.Date &amp;amp; c &amp;gt;= 2;

   format date year.;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 18 Jan 2023 08:00:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854279#M337614</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2023-01-18T08:00:24Z</dc:date>
    </item>
    <item>
      <title>Re: Small query</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854323#M337629</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/434763"&gt;@saitejaguduru97&lt;/a&gt;&amp;nbsp;did you find your answer?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If so, then please close the thread.&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jan 2023 14:12:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Small-query/m-p/854323#M337629</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2023-01-18T14:12:31Z</dc:date>
    </item>
  </channel>
</rss>

