<?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: sum of sales within 5 minutes! in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94180#M257615</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi PG sir,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Subject: Out of context to this discussion /*forgive me*/&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your solutions at the supersonic speed at which you seem to write codes really amazes me. It also inspires me to become as great as you. I have noticed on these forums you have been applauded many many times along the likes of Art, haikuo, tomkari et al so yet another praise from is nothing perhaps new to you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However for me, I am not from a conventional academic background nor super smart like you. By random chance, I got exposed to SAS and i am slowly learning and progressing. Would you suggest me how to pick up speed, particularly like familiarizing with those tons of functions and call routines like when and where to use/apply them.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Right now, I am extensively researching and learning on sugi and support.sas. and few other books. However it doesn't seem adequate. Can you guide me a few tips in speedy learning. I may not be smart nor academic, but i dont wanna give up.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your response would be most appreciated. Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Charlotte from England&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 04 Jun 2013 06:29:25 GMT</pubDate>
    <dc:creator>CharlotteCain</dc:creator>
    <dc:date>2013-06-04T06:29:25Z</dc:date>
    <item>
      <title>sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94178#M257613</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Two products A and B are sold in the US and Canada. I want to sum of sales with the same price within 5 minutes for each market whenever there are sales with the same price in each market. I assign the time of the first sale as the time for output. For example, product A. the price is 5 (6) from 10:05 to 10:09 in US (Canada) market. Thus, I will sum of all sales in this period for each market. Sale for the US&amp;nbsp; is 7 + 7 + 6 + 4 +7 (31) and Sale for Canada is 8 + 5 (13). The first sale in the US (Canada) is a10:05 (10:06). Thus, I have the first two rows in the output. I do similar whenever there are sales within 5 minutes in each market. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Could you show me how to deal with this matter?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you so much, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;Input:&lt;/STRONG&gt;&lt;/EM&gt; &lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="width: 353px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class="xl24" height="24" width="97"&gt;time&lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;Product &lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;sale&lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;Price&lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;Market&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:05&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;7&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:06&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;8&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:06&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;7&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:07&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:08&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:08&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;4&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:09&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;7&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:12&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;12&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:12&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;8&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:13&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:13&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;9&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:13&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:14&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;11&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:15&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;12&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:16&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;13&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl26" height="24"&gt;10:01&lt;/TD&gt;&lt;TD class="xl27"&gt;B&lt;/TD&gt;&lt;TD class="xl27"&gt;20&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl27"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl26" height="24"&gt;10:02&lt;/TD&gt;&lt;TD class="xl27"&gt;B&lt;/TD&gt;&lt;TD class="xl27"&gt;15&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl27"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl26" height="24"&gt;10:02&lt;/TD&gt;&lt;TD class="xl27"&gt;B&lt;/TD&gt;&lt;TD class="xl27"&gt;22&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl27"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl26" height="24"&gt;10:03&lt;/TD&gt;&lt;TD class="xl27"&gt;B&lt;/TD&gt;&lt;TD class="xl27"&gt;24&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl27"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl26" height="24"&gt;10:03&lt;/TD&gt;&lt;TD class="xl27"&gt;B&lt;/TD&gt;&lt;TD class="xl27"&gt;27&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl27"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl26" height="24"&gt;10:04&lt;/TD&gt;&lt;TD class="xl27"&gt;B&lt;/TD&gt;&lt;TD class="xl27"&gt;28&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl27"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl26" height="24"&gt;10:05&lt;/TD&gt;&lt;TD class="xl27"&gt;B&lt;/TD&gt;&lt;TD class="xl27"&gt;22&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl27"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:07&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;21&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:08&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;19&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:08&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;20&lt;/TD&gt;&lt;TD class="xl27"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:09&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;23&lt;/TD&gt;&lt;TD class="xl27"&gt;11&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:10&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;24&lt;/TD&gt;&lt;TD class="xl27"&gt;11&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:12&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl27"&gt;11&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;Output&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="width: 406px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class="xl24" height="24" width="64"&gt;time &lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;Product&lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;sale&lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;price &lt;/TD&gt;&lt;TD class="xl24" width="64"&gt;market&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:05&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;31&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;TD class="xl24"&gt;=7+7+6=4+7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:06&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;13&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;TD class="xl24"&gt;=8+5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:12&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;21&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;TD class="xl24"&gt;=12+9&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:12&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;18&lt;/TD&gt;&lt;TD class="xl24"&gt;5&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;TD class="xl24"&gt;=8+10&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:13&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:14&lt;/TD&gt;&lt;TD class="xl24"&gt;A&lt;/TD&gt;&lt;TD class="xl24"&gt;36&lt;/TD&gt;&lt;TD class="xl24"&gt;6&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;TD class="xl24"&gt;=11+12+13&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:01&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;116&lt;/TD&gt;&lt;TD class="xl24"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:02&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;42&lt;/TD&gt;&lt;TD class="xl24"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:07&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;41&lt;/TD&gt;&lt;TD class="xl24"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:08&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;19&lt;/TD&gt;&lt;TD class="xl24"&gt;10&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:09&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;23&lt;/TD&gt;&lt;TD class="xl24"&gt;11&lt;/TD&gt;&lt;TD class="xl24"&gt;US&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl25" height="24"&gt;10:10&lt;/TD&gt;&lt;TD class="xl24"&gt;B&lt;/TD&gt;&lt;TD class="xl24"&gt;29&lt;/TD&gt;&lt;TD class="xl24"&gt;11&lt;/TD&gt;&lt;TD class="xl24"&gt;Canada&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Jun 2013 21:17:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94178#M257613</guid>
      <dc:creator>vxhong17</dc:creator>
      <dc:date>2013-06-03T21:17:36Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94179#M257614</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This is not exactly what you asked for. I think you would get a fairer comparison if you used the same time periods for both markets. Here is how to get total sales and mean price for each 5 minute period when sales occured on both markets :&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data have;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;input time :time5. Product $ sale Price Market$;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;format time time5.;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;datalines;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:05 A 7 5 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:06 A 8 6 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:06 A 7 5 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:07 A 6 5 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:08 A 5 6 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:08 A 4 5 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:09 A 7 5 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:12 A 12 5 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:12 A 8 5 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:13 A 10 5 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:13 A 9 5 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:13 A 10 6 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:14 A 11 6 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:15 A 12 6 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:16 A 13 6 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:01 B 20 10 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:02 B 15 10 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:02 B 22 10 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:03 B 24 10 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:03 B 27 10 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:04 B 28 10 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:05 B 22 10 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:07 B 21 10 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:08 B 19 10 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:08 B 20 10 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:09 B 23 11 US&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:10 B 24 11 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;10:12 B 5 11 Canada&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;proc sql;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;create table CanOrUS5min as&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;select &lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; product,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; intnx("MINUTE5",time,0) as time5 format=time5.,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; market,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sum(sale) as totalSale,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mean(price) as meanPrice&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;from have&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;group by product, calculated time5, market;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;create table CanAndUS5min as&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;select &lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; product,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; time5,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; market,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; totalSale,&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; meanPrice&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;from CanOrUS5min&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;group by product, time5&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;having count(market)=2&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;order by product, time5, market;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;drop table CanOrUS5min;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;select * from CanAndUS5min;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;quit;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;hth&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Jun 2013 01:14:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94179#M257614</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2013-06-04T01:14:41Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94180#M257615</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi PG sir,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="text-decoration: underline;"&gt;&lt;STRONG&gt;Subject: Out of context to this discussion /*forgive me*/&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your solutions at the supersonic speed at which you seem to write codes really amazes me. It also inspires me to become as great as you. I have noticed on these forums you have been applauded many many times along the likes of Art, haikuo, tomkari et al so yet another praise from is nothing perhaps new to you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However for me, I am not from a conventional academic background nor super smart like you. By random chance, I got exposed to SAS and i am slowly learning and progressing. Would you suggest me how to pick up speed, particularly like familiarizing with those tons of functions and call routines like when and where to use/apply them.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Right now, I am extensively researching and learning on sugi and support.sas. and few other books. However it doesn't seem adequate. Can you guide me a few tips in speedy learning. I may not be smart nor academic, but i dont wanna give up.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your response would be most appreciated. Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Charlotte from England&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Jun 2013 06:29:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94180#M257615</guid>
      <dc:creator>CharlotteCain</dc:creator>
      <dc:date>2013-06-04T06:29:25Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94181#M257616</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you Charlotte for the good words.&lt;/P&gt;&lt;P&gt;The good news is that you already got as far as you did. I met many who tried to learn SAS by themselves and just don't get it; they never progress. You are among the special few with the motivation and talent to succeed.&lt;/P&gt;&lt;P&gt;The bad news is that learning SAS by yourself is a long process. I have been at it, on and off, since 1989! So you understand speedy learning is not my specialty. I never took a course; I progressed, albeit slowly, by solving real problems (mine or other's) in the course of my work. I learned a lot lately from the discussion forum, it made me try many new things like proc fcmp, hash objects and DOW loops. For me, it is a form of continuing education.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hereby call on all SAS teachers (&lt;A __default_attr="5253" __jive_macro_name="user" class="jive_macro jive_macro_user" href="https://communities.sas.com/" modifiedtitle="true" title="Astounding"&gt;&lt;/A&gt;, &lt;A __default_attr="2431" __jive_macro_name="user" class="jive_macro jive_macro_user" href="https://communities.sas.com/" modifiedtitle="true" title="Tom"&gt;&lt;/A&gt;, &lt;A __default_attr="63295" __jive_macro_name="user" class="jive_macro jive_macro_user" href="https://communities.sas.com/" modifiedtitle="true" title="Cynthia"&gt;&lt;/A&gt;, and others?) for help on self learning material.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best of luck.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG de Montréal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Jun 2013 15:01:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94181#M257616</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2013-06-04T15:01:20Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94182#M257617</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Merci beaucoup PG Sir,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Noticed Montreal &lt;img id="smileyhappy" class="emoticon emoticon-smileyhappy" src="https://communities.sas.com/i/smilies/16x16_smiley-happy.png" alt="Smiley Happy" title="Smiley Happy" /&gt; &lt;SPAN class="short_text" id="result_box" lang="fr"&gt;&lt;SPAN class="hps"&gt;Je&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;fais&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;l'amour&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;à Montréal&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;et au Canada.&lt;/SPAN&gt;&lt;/SPAN&gt; Although English girl through and through, love the french too. I don't mind exchanging Traditional English Fish &amp;amp; Chips for a nice French wine. I guess the same duplicates applies in Quebec and Anglophone Canada.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Passez une bonne journée,&lt;/P&gt;&lt;P&gt;Charlotte de Liverpool, England&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Jun 2013 15:34:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94182#M257617</guid>
      <dc:creator>CharlotteCain</dc:creator>
      <dc:date>2013-06-04T15:34:36Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94183#M257618</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;A bit late for the party, was actually working hard.The moment I saw the title, the idea of using Hash() starts to tickle me none stop. Here is my approach, hopefully more fitting into the original request.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;data&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; time &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: teal; background: white;"&gt;time5.&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; Product $ sale Price Market$; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; time &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: teal; background: white;"&gt;time5.&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;cards&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:05 A 7 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:06 A 8 6 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:06 A 7 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:07 A 6 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 A 5 6 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 A 4 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:09 A 7 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:12 A 12 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:12 A 8 5 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:13 A 10 5 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:13 A 9 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:13 A 10 6 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:14 A 11 6 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:15 A 12 6 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:16 A 13 6 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:01 B 20 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:02 B 15 10 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:02 B 22 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:03 B 24 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:03 B 27 10 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:04 B 28 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:05 B 22 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:07 B 21 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 B 19 10 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 B 20 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:09 B 23 11 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:10 B 24 11 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:12 B 5 11 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;data&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; want; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; _n_=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;1&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;then&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;do&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;if&lt;/SPAN&gt; &lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;then&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;set&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have(rename=(time=_t sale=_s)); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;declare&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; hash h(dataset:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'have(rename=(time=_t sale=_s))'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, multidata:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, ordered:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;OL style="list-style-type: lower-alpha;"&gt;&lt;LI&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h.definekey(&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'product'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'price'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'market'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h.definedata(all:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h.definedone(); &lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;call&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; missing(_t,_s); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;declare&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; hash h1(dataset:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'have'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, multidata:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, ordered:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h1.definekey(&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'product'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'price'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'market'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'time'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'sale'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h1.definedata(all:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h1.definedone(); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;end&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;set&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; h1.find() = &lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; ; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sale_sum=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;do&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; rc=h.find() &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;by&lt;/SPAN&gt; &lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;while&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; (rc=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;if&lt;/SPAN&gt; &lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; = &amp;lt;_t - time &amp;lt;=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;300&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;then&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;do&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; sale_sum + _s; rc=h1.remove(key:product, key:price, key:market,key:_t,key:_s);&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;end&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc=h.find_next(); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;end&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; rc _:;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Jun 2013 02:15:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94183#M257618</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2013-06-05T02:15:16Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94184#M257619</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi PGStat&lt;STRONG&gt;s, &lt;/STRONG&gt;&lt;SPAN class="j-post-author "&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;Thank you so much for your suggestion,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hi Haikuo,&lt;/P&gt;&lt;P&gt;I was still waiting for the help. Thank you so much for your precious help,&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Jun 2013 02:48:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94184#M257619</guid>
      <dc:creator>vxhong17</dc:creator>
      <dc:date>2013-06-05T02:48:28Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94185#M257620</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;Hi Haikuo,&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;Thank you so much for your sample code. It worked perfectly for a small sample. However, when I worked with a very large sample, SAS reported insufficient memory. &lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;Could you have any suggestion? &lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;&lt;/P&gt;&lt;P style="margin-bottom: 0.0001pt;"&gt;Thank you so much, &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Jun 2013 19:45:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94185#M257620</guid>
      <dc:creator>vxhong17</dc:creator>
      <dc:date>2013-06-05T19:45:58Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94186#M257621</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ouch! I hear people say, Hash does not have limit, but RAM is the limit. So besides reaching for your pocket book and buying more RAMs, how does your real data look like, does it have only 5 variables or more? How many obs you have? How much RAM you have? Do you have a unique index variable to identify obs? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Haikuo &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Jun 2013 21:10:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94186#M257621</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2013-06-05T21:10:14Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94187#M257622</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Haikuo, &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My RAM is 8GB. I have 7 variables. I work on many files. Each is from 2GB to 4GB. I do not have a unique ID and have to use several ones. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you so much, &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Jun 2013 07:07:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94187#M257622</guid>
      <dc:creator>vxhong17</dc:creator>
      <dc:date>2013-06-10T07:07:51Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94188#M257623</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi vxhong17,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I would recommend doing the following:&lt;/P&gt;&lt;P&gt;1. Find out how much memory is allocate to your SAS session ----&amp;gt; proc options group=memory; run;&lt;/P&gt;&lt;P&gt;2. Specify higher internal hash table size, by specifying higher hashexp: value. Check the online help below&lt;/P&gt;&lt;DL&gt;&lt;DT&gt;&lt;A name="a002900451"&gt;&lt;/A&gt;hashexp: &lt;SPAN class="strongEmph"&gt;n&lt;/SPAN&gt; &lt;/DT&gt;&lt;DD&gt;&lt;P&gt;&lt;A name="a002900452"&gt;&lt;/A&gt;The hash object's internal table size, where the size of the hash table is 2&lt;SUP&gt;n&lt;/SUP&gt;.&lt;/P&gt;&lt;P&gt;&lt;A name="a002900453"&gt;&lt;/A&gt;The value of HASHEXP is used as a power-of-two exponent to create the hash table size. For example, a value of 4 for HASHEXP equates to a hash table size of 2&lt;SUP&gt;4&lt;/SUP&gt;, or 16. The maximum value for HASHEXP is 20.&lt;/P&gt;&lt;P&gt;&lt;A name="a002900454"&gt;&lt;/A&gt;The hash table size is not equal to the number of items that can be stored. Imagine the hash table as an array of 'buckets.' A hash table size of 16 would have 16 'buckets.' Each bucket can hold an infinite number of items. The efficiency of the hash table lies in the ability of the hashing function to map items to and retrieve items from the buckets.&lt;/P&gt;&lt;P&gt;&lt;A name="a002900455"&gt;&lt;/A&gt;You should specify the hash table size relative to the amount of data in the hash object in order to maximize the efficiency of the hash object lookup routines. Try different HASHEXP values until you get the best result. For example, if the hash object contains one million items, a hash table size of 16 (HASHEXP = 4) would work, but not very efficiently. A hash table size of 512 or 1024 (HASHEXP = 9 or 10) would result in the best performance. &lt;/P&gt;&lt;TABLE cellpadding="4" cellspacing="2"&gt;&lt;TBODY&gt;&lt;TR valign="top"&gt;&lt;TD align="left" class="label" nowrap="nowrap" width="95"&gt;Default:&lt;/TD&gt;&lt;TD align="left" class="bgBlockLight"&gt;&lt;A name="a002900456"&gt;&lt;/A&gt;8, which equates to a hash table size of 2&lt;SUP&gt;8&lt;/SUP&gt; or 256&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DD&gt;&lt;/DL&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Jun 2013 12:00:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94188#M257623</guid>
      <dc:creator>AhmedAl_Attar</dc:creator>
      <dc:date>2013-06-10T12:00:59Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94189#M257624</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;One question and one suggestion:&lt;/P&gt;&lt;P&gt;Question: What you do you mean by "work on many files"? Are you doing do it in parallel (multiple SAS session at the same time) or you just do it one file at a time? I hope it is the latter, otherwise, you need to opt to the latter.&lt;/P&gt;&lt;P&gt;Suggestion:&lt;/P&gt;&lt;P&gt;You probably have to do it more than one pass, in the first pass, an unique identifier is created:&lt;/P&gt;&lt;P&gt;data have1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;_index=_n_;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;After you have done that, here is the modified code, it will save roughly&amp;nbsp; half of the RAM needed than previous version, try it out and let us know how it works.&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;data&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; time &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: teal; background: white;"&gt;time5.&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; Product $ sale Price Market$; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;format&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; time &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: teal; background: white;"&gt;time5.&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;cards&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:05 A 7 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:06 A 8 6 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:06 A 7 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:07 A 6 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 A 5 6 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 A 4 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:09 A 7 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:12 A 12 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:12 A 8 5 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:13 A 10 5 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:13 A 9 5 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:13 A 10 6 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:14 A 11 6 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:15 A 12 6 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:16 A 13 6 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:01 B 20 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:02 B 15 10 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:02 B 22 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:03 B 24 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:03 B 27 10 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:04 B 28 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:05 B 22 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:07 B 21 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 B 19 10 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:08 B 20 10 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:09 B 23 11 US &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:10 B 24 11 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;10:12 B 5 11 Canada &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;data&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;set&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;_index=_n_;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;data&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; want; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; _n_=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;1&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;then&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;do&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;declare&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; hash h(dataset:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'have1(keep=_index time Product sale Price Market rename=(time=_t sale=_s))'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, multidata:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, ordered:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;OL style="list-style-type: lower-alpha;"&gt;&lt;LI&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h.definekey(&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'product'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'price'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;, &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'market'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h.definedata(all:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'y'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/LI&gt;&lt;LI&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h.definedone(); &lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;call&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; missing(_t,_s); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;declare&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; hash h1(dataset:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'have1(keep=_index)'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h1.definekey(&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'_index'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h1.definedata(data:&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: purple; background: white;"&gt;'_index'&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;h1.definedone(); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;end&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;set&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have1; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;if&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; h1.find() = &lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; ; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; sale_sum=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;do&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; rc=h.find() &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;by&lt;/SPAN&gt; &lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;while&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; (rc=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;if&lt;/SPAN&gt; &lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; = &amp;lt;_t - time &amp;lt;=&lt;/SPAN&gt;&lt;STRONG style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;300&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;then&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;do&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; sale_sum + _s; rc=h1.remove();&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;end&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc=h.find_next(); &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;end&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;; &lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;drop&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; rc _:;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good Luck,&lt;/P&gt;&lt;P&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Jun 2013 19:32:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94189#M257624</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2013-06-10T19:32:59Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94190#M257625</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OP's issue is the tables are too large to fit into the RAM, and Hash objects will chew up whatever available in the RAM, Hashexp setting has NO effect on that. After loading data into RAM successfully done, then Hashexp will determine how the mapping works, therefore affects the efficiency.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Haikuo &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Jun 2013 19:57:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94190#M257625</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2013-06-10T19:57:07Z</dc:date>
    </item>
    <item>
      <title>Re: sum of sales within 5 minutes!</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94191#M257626</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi AhmedAl-Attar,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thank you for your suggestion.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hi Haikuo, &lt;/P&gt;&lt;P&gt;I just do one by one.&lt;/P&gt;&lt;P&gt;It works better now. Thank you so much. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 11 Jun 2013 21:04:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sum-of-sales-within-5-minutes/m-p/94191#M257626</guid>
      <dc:creator>vxhong17</dc:creator>
      <dc:date>2013-06-11T21:04:56Z</dc:date>
    </item>
  </channel>
</rss>

