DATA Step, Macro, Functions and more

convert datetimes to another time zone

Reply
Regular Contributor
Posts: 196

convert datetimes to another time zone

I have a variable with the following three observations in datetime format.
'11OCT2010:10:28:47'
'17OCT2010:12:21:47'
'27OCT2010:16:14:47'
These date times are in UTC (coordinated universal time). I would like to convert them to PST (pacific standard).
Does SAS have a tool for converting date time values to other time zones?
Super Contributor
Super Contributor
Posts: 3,174

Re: convert datetimes to another time zone

No specific "tool" - you need only use some data condition to test (revealing the time-zone), and then use a DATA step (or PROC SQL) programming technique to adjust (either increment or decrement) the SAS DATETIME variable value.

One example using a SAS assignment statement within a DATA step:

data _null_;
format UTC_DT Local_DT DATETIME21. ;
UTC_DT = datetime(); /* assign current SAS datetime var */
if () then TimeZoneOffset = -"5:00:00"t;
else if () then TimeZoneOffset = -"6:00:00"t;
else do;
* unknown condition code - abort maybe? ;
end;
Local_DT = SUM(UTC_DT,TimeZoneOffset);
putlog _all_;
run;


Scott Barry
SBBWorks, Inc.

Suggested Google advanced search argument, this topic / post:

date datetime variables site:sas.com
Valued Guide
Posts: 632

Re: convert datetimes to another time zone

Under Windows and Unix there is the TZ environment variable that might prove to be useful. Take a look at:
http://www.lexjansen.com/pharmasug/2010/sas/sas-tt-sas01.pdf
Ask a Question
Discussion stats
  • 2 replies
  • 2755 views
  • 0 likes
  • 3 in conversation