<?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: Get last datetime in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591180#M169318</link>
    <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have2;
&amp;nbsp; &amp;nbsp; set have;
&amp;nbsp; &amp;nbsp; date=datepart(datetime);
run;

proc summary nway data=have2;
&amp;nbsp; &amp;nbsp; &amp;nbsp;class id date;
&amp;nbsp; &amp;nbsp; &amp;nbsp;var datetime;
&amp;nbsp; &amp;nbsp; &amp;nbsp;output out=want max=;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Tue, 24 Sep 2019 15:01:09 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2019-09-24T15:01:09Z</dc:date>
    <item>
      <title>Get last datetime</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591172#M169312</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could someone please help me with getting the most recent date of a dataset, but with date time?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have:&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;Datetime&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;13SEP19:18:46:44&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;13SEP19:18:46:47&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;13SEP19:18:46:53&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:04&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:05&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:08&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:15&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:17&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:19&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:20&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:23&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:26&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:28&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:35&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:38&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:41&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:46&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;23SEP19:21:03:49&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;I want:&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;Datetime&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;13SEP19:18:46:53&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;20SEP19:17:51:20&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ABC&lt;/TD&gt;&lt;TD&gt;23SEP19:21:03:49&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 24 Sep 2019 14:49:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591172#M169312</guid>
      <dc:creator>kz134</dc:creator>
      <dc:date>2019-09-24T14:49:58Z</dc:date>
    </item>
    <item>
      <title>Re: Get last datetime</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591179#M169317</link>
      <description>&lt;P&gt;I believe that you are missing a detail, such as "per ID per&amp;nbsp;day". Is that the intent?&lt;/P&gt;</description>
      <pubDate>Tue, 24 Sep 2019 15:00:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591179#M169317</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2019-09-24T15:00:56Z</dc:date>
    </item>
    <item>
      <title>Re: Get last datetime</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591180#M169318</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have2;
&amp;nbsp; &amp;nbsp; set have;
&amp;nbsp; &amp;nbsp; date=datepart(datetime);
run;

proc summary nway data=have2;
&amp;nbsp; &amp;nbsp; &amp;nbsp;class id date;
&amp;nbsp; &amp;nbsp; &amp;nbsp;var datetime;
&amp;nbsp; &amp;nbsp; &amp;nbsp;output out=want max=;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 24 Sep 2019 15:01:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591180#M169318</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2019-09-24T15:01:09Z</dc:date>
    </item>
    <item>
      <title>Re: Get last datetime</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591229#M169336</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table want as
select
  id,
  datepart(datetime) format=yymmddd10. as date,
  max(datetime)
from have
group by id, calculated date;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 24 Sep 2019 17:08:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591229#M169336</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2019-09-24T17:08:20Z</dc:date>
    </item>
    <item>
      <title>Re: Get last datetime</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591345#M169365</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/209153"&gt;@kz134&lt;/a&gt;:&lt;/P&gt;
&lt;P&gt;If your input file is sorted by [ID, datetime], the need to create an extra date part variable in a separate step (creating a data set or view) can be circumvented by using the GROUPFORMAT option on the BY statement:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have ;                                  
  input id $ datetime :anydtdtm21. extravar ;
  cards ;                                    
ABC  13SEP19:18:46:44   1                    
ABC  13SEP19:18:46:47   2                    
ABC  13SEP19:18:46:53   3                    
ABC  20SEP19:17:51:04   4                    
ABC  20SEP19:17:51:05   5                    
ABC  20SEP19:17:51:08   6                    
ABC  20SEP19:17:51:15   7                    
ABC  20SEP19:17:51:17   8                    
ABC  20SEP19:17:51:19   9                    
ABC  20SEP19:17:51:20  10                    
ABC  23SEP19:21:03:23  11                    
ABC  23SEP19:21:03:26  12                    
ABC  23SEP19:21:03:28  13                    
ABC  23SEP19:21:03:35  14                    
ABC  23SEP19:21:03:38  15                    
ABC  23SEP19:21:03:41  16                    
ABC  23SEP19:21:03:46  17                    
ABC  23SEP19:21:03:49  18                    
;                                            
run ;                                        
                                             
data want ;                                  
  set have ;                                 
  by id datetime groupformat ;               
  format datetime E8601DN. ;                 
  if last.datetime ;                         
run ;                                        
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Note that if you open WANT in the viewer, you'll see the DATETIME variable displayed as YYYY-MM-DD due to the ISO format E8601DNw. attached to it. However, its underlying values are still the original datetime values. To change the format back to DATETIMEw., you can follow the above step by:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql ;                                           
  alter table want modify datetime format=datetime. ;
quit ;                                               
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;(or, alternatively, use the DATASETS procedure instead). Though it's an extra step, it won't affect performance since it doesn't read the data from WANT but only modifies the format in its descriptor.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Kind regards&lt;/P&gt;
&lt;P&gt;Paul D.&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 25 Sep 2019 01:34:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Get-last-datetime/m-p/591345#M169365</guid>
      <dc:creator>hashman</dc:creator>
      <dc:date>2019-09-25T01:34:50Z</dc:date>
    </item>
  </channel>
</rss>

