<?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: Convert ISO8601 string to datetime format in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421082#M280744</link>
    <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/165282"&gt;@Reggiete&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Input ( your_variable, &amp;lt;informat - what variable currently looks like&amp;gt;) as new_variable format=&amp;lt;format - what you want variable to look like&amp;gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The INFORMAT is likely one from&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/138205"&gt;@novinosrin&lt;/a&gt;&amp;nbsp;post and the format is DATETIME20.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The decimal portion of 9 is likely not what you actually want, so I would try datetime20 first.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 14 Dec 2017 05:39:00 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2017-12-14T05:39:00Z</dc:date>
    <item>
      <title>Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421077#M280740</link>
      <description>&lt;P&gt;Hello Everyone,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am new to sas and I am trying to convert a character string which is in ISO8601 to datetime format in sas.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My code looks like this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;Select appnum&lt;/P&gt;&lt;P&gt;,input(submitdate,datetime22.9) as Submitdate&lt;/P&gt;&lt;P&gt;from test&lt;/P&gt;&lt;P&gt;;quit;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;submitdate is being pulled from an XML data source so its currently in varchar format&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could any help me with converting the submitdate(which is in iso8601) to datetime?&amp;nbsp; I am new and I only use proc sql; since I have a sql background and still very new to SAS.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 05:14:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421077#M280740</guid>
      <dc:creator>Reggiete</dc:creator>
      <dc:date>2017-12-14T05:14:09Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421078#M280741</link>
      <description>&lt;P&gt;Have you tried this link yet?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a003169817.htm" target="_blank"&gt;http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a003169817.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;You may want to apply one of these informat from the above link:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1" cellspacing="0" cellpadding="6"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Datetime&lt;/TD&gt;&lt;TD&gt;YYYY-MM-DDThh:mm:ss.nnnnnn&lt;/TD&gt;&lt;TD&gt;2008-09-15T15:53:00&lt;/TD&gt;&lt;TD&gt;E8601DT&lt;SPAN class="emph"&gt;w.d&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Datetime with time zone&lt;/TD&gt;&lt;TD&gt;YYYY-MM-DDThh:mm:ss.nnnnnn+|-hh:mm&lt;/TD&gt;&lt;TD&gt;2008-09-15T15:53:00+05:00&lt;/TD&gt;&lt;TD&gt;E8601DZ&lt;SPAN class="emph"&gt;w.d&lt;/SPAN&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Read date from a datetime&lt;/TD&gt;&lt;TD&gt;YYYY-MM-DD&lt;/TD&gt;&lt;TD&gt;2008-09-15&lt;/TD&gt;&lt;TD&gt;E8601DN&lt;SPAN class="emph"&gt;w&lt;/SPAN&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Thu, 14 Dec 2017 05:31:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421078#M280741</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2017-12-14T05:31:30Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421080#M280742</link>
      <description>&lt;P&gt;hey,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I found that page on a google search, but don't quite understand what I would need to do to convert from ISO8601 varchar to datetime22.9 format in SAS.&amp;nbsp; using the above code.&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 05:31:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421080#M280742</guid>
      <dc:creator>Reggiete</dc:creator>
      <dc:date>2017-12-14T05:31:23Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421081#M280743</link>
      <description>&lt;P&gt;The idea is to apply informat from the page and the informat should convert iso date to a datetime value of sas. Then you apply a datetime format on the numeric datetime value that you derived by applying the informat&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 05:33:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421081#M280743</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2017-12-14T05:33:16Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421082#M280744</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/165282"&gt;@Reggiete&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Input ( your_variable, &amp;lt;informat - what variable currently looks like&amp;gt;) as new_variable format=&amp;lt;format - what you want variable to look like&amp;gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The INFORMAT is likely one from&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/138205"&gt;@novinosrin&lt;/a&gt;&amp;nbsp;post and the format is DATETIME20.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The decimal portion of 9 is likely not what you actually want, so I would try datetime20 first.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 05:39:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421082#M280744</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-12-14T05:39:00Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421092#M280745</link>
      <description>&lt;P&gt;would this be correct I still get an error.&lt;/P&gt;&lt;P&gt;input(date, informat=e8601dzw.d) as Date format=datetime20&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 06:22:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421092#M280745</guid>
      <dc:creator>Reggiete</dc:creator>
      <dc:date>2017-12-14T06:22:35Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421093#M280746</link>
      <description>&lt;P&gt;&lt;SPAN&gt;input(date, informat=e8601dzw.d) as Date format=datetime20&lt;/SPAN&gt;&lt;SPAN&gt;input(date, informat=e8601dzw.d) as Date format=datetime20&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;e8601dz&lt;STRONG&gt;w.d&amp;nbsp;&lt;/STRONG&gt; &amp;nbsp;specify and remove informat=&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV class="xis-argDescriptionPair"&gt;&lt;SPAN class="xis-userSuppliedValue"&gt;w&lt;/SPAN&gt;&lt;DIV class="xis-argumentDescription"&gt;&lt;P class="xis-paraSimpleFirst"&gt;specifies the width of the input field.&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Range&lt;/TD&gt;&lt;TD&gt;1–32&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV class="xis-argDescriptionPair"&gt;&lt;SPAN class="xis-userSuppliedValue"&gt;d&lt;/SPAN&gt;&lt;DIV class="xis-argumentDescription"&gt;&lt;P class="xis-paraSimpleFirst"&gt;specifies the power of 10 by which to divide the value. If the data contain decimal points, the&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN class="xis-userSuppliedValue"&gt;d&lt;/SPAN&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;value is ignored. This argument is optional.&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Range&lt;/TD&gt;&lt;TD&gt;0–31&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Specify the informat just like you did earlier with a datetime example&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Thu, 14 Dec 2017 06:28:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421093#M280746</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2017-12-14T06:28:58Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421170#M280747</link>
      <description>&lt;P&gt;Not quite, the INPUT statement doesn't require the INFORMAT keyword.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;input(date, e8601dz.) as Date format=datetime20.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 14:01:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421170#M280747</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-12-14T14:01:34Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421239#M280748</link>
      <description>&lt;P&gt;hey reeza,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;example of the date i am trying to convert '2015-12-14T12:00:29.3387979-05:00'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;input(submitdate, E8601Dz.) as date format=datetime20.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;i tried the above code and i get blanks&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 16:26:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421239#M280748</guid>
      <dc:creator>Reggiete</dc:creator>
      <dc:date>2017-12-14T16:26:20Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421348#M280749</link>
      <description>&lt;P&gt;Informats will have a default width if not supplied. In the&amp;nbsp;case of E8601DZ that default is 26. Which for your example is in the middle of the decimal portion of the seconds which means the required part of -05:00 is not seen by the informat. Which will require using the W part of the format.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;data junk;
   x= '2015-12-14T12:00:29.3387979-05:00';
   y=input(x,e8601dz33.);
   format y datetime20.;
   put y datetime20.;
run;&lt;/PRE&gt;
&lt;P&gt;Informats, other thant when used in fixed column input statements, seldom have problems when W is larger than the input string's length.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you have more decimals in the seconds you may want to use the maximum of W=35 in the informat.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Is your clock actually accurate to the millionth of a second???&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 23:43:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421348#M280749</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2017-12-14T23:43:06Z</dc:date>
    </item>
    <item>
      <title>Re: Convert ISO8601 string to datetime format</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421396#M280750</link>
      <description>&lt;P&gt;Thank you that worked! many thanks!&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 14 Dec 2017 22:10:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Convert-ISO8601-string-to-datetime-format/m-p/421396#M280750</guid>
      <dc:creator>Reggiete</dc:creator>
      <dc:date>2017-12-14T22:10:59Z</dc:date>
    </item>
  </channel>
</rss>

