<?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: Fetching top 20 rows with maximum amount paid monthly through SQL in New SAS User</title>
    <link>https://communities.sas.com/t5/New-SAS-User/Fetching-top-20-rows-with-maximum-amount-paid-monthly-through/m-p/814195#M34143</link>
    <description>&lt;P&gt;&lt;A href="https://documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/proc/n18s1uw2tqvtxdn1chay1qq1jke6.htm#n18s1uw2tqvtxdn1chay1qq1jke6" target="_blank" rel="noopener"&gt;PROC RANK&lt;/A&gt; is a good way of doing this.&lt;/P&gt;</description>
    <pubDate>Thu, 19 May 2022 00:53:13 GMT</pubDate>
    <dc:creator>SASKiwi</dc:creator>
    <dc:date>2022-05-19T00:53:13Z</dc:date>
    <item>
      <title>Fetching top 20 rows with maximum amount paid monthly through SQL</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Fetching-top-20-rows-with-maximum-amount-paid-monthly-through/m-p/814114#M34141</link>
      <description>&lt;P&gt;Please someone could help with below scenario to code through Proc SQL:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Scenario: we have a dataset with column : Paitent_Id, Name, Appointment_date and Amount_Paid.&lt;/P&gt;&lt;P&gt;I need to fetch report for top 10 Patient for each_month who paid the maximum Bill.&lt;/P&gt;&lt;P&gt;Below is the dummy data:&lt;/P&gt;&lt;P&gt;Patient_Id&amp;nbsp; Patient_Name&amp;nbsp; Appointment_date Bill_Paid&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 01/01/2000&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 250&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 21/02/2000&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 350&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; C&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;15/01/2000&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;400&lt;/P&gt;&lt;P&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; D&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;17/02/2000&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;430&lt;/P&gt;&lt;P&gt;5&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; E&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 01/03/2000&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 500&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;Following is the code i've tried but i want to replicate same scenario through proc sql or if any other optimized solution someone could suggest, will be appreciated.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Code:&lt;/P&gt;&lt;P&gt;format date yymmn6.;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc sort data=dummy out=sorted_op;&lt;/P&gt;&lt;P&gt;by date descending bill_paid;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;data final;&lt;/P&gt;&lt;P&gt;set sorted_op;&lt;/P&gt;&lt;P&gt;by date;&lt;/P&gt;&lt;P&gt;if first.date then n=1;&lt;/P&gt;&lt;P&gt;else n+1;&lt;/P&gt;&lt;P&gt;if n&amp;lt;=10;&lt;/P&gt;&lt;P&gt;run;&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>Wed, 18 May 2022 16:23:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Fetching-top-20-rows-with-maximum-amount-paid-monthly-through/m-p/814114#M34141</guid>
      <dc:creator>Brad39</dc:creator>
      <dc:date>2022-05-18T16:23:13Z</dc:date>
    </item>
    <item>
      <title>Re: Fetching top 20 rows with maximum amount paid monthly through SQL</title>
      <link>https://communities.sas.com/t5/New-SAS-User/Fetching-top-20-rows-with-maximum-amount-paid-monthly-through/m-p/814195#M34143</link>
      <description>&lt;P&gt;&lt;A href="https://documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/proc/n18s1uw2tqvtxdn1chay1qq1jke6.htm#n18s1uw2tqvtxdn1chay1qq1jke6" target="_blank" rel="noopener"&gt;PROC RANK&lt;/A&gt; is a good way of doing this.&lt;/P&gt;</description>
      <pubDate>Thu, 19 May 2022 00:53:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/New-SAS-User/Fetching-top-20-rows-with-maximum-amount-paid-monthly-through/m-p/814195#M34143</guid>
      <dc:creator>SASKiwi</dc:creator>
      <dc:date>2022-05-19T00:53:13Z</dc:date>
    </item>
  </channel>
</rss>

