A quick question.
How do I convert this $21 to DATETIME18.?
I have this: 2014-04-17 06:18:24
I want this: 17APR14:06:18:24
What's wrong with my code?
timestamp1=input(timestamp,datetime18.);
format timestamp1 datetime18.;
Thank you!
Try
timestamp1=input(timestamp, anydtdte21.);
format timestamp1 datetime18.;
PG
2014-04-09 06:24:28 became 01JAN60:05:30:22
The format is correct but it's the wrong date and time, hmm..
Sorry, it should have been informat ANYDTDTM21. - PG
why when I run a case when statement on my newly formatted datetime, it says:
case when dt=MIN(dt) then ....
ERROR: Result of WHEN clause 2 is not the same data type as the preceding
results.
ERROR: Expression using not equals (^=) has components that are of different
data types.
Qn: Shouldn't the format of MIN(dt) be the same as dt???
Strongly suspect 'dt' is Char.
Please show the whole case ... end code block.
Hello shixin,
Maybe try:
data _null_;
string='2014-04-17 06:18:24';
date=input(scan(string,1,' '),E8601DA10.);
put date= date.;
time=input(scan(string,2,' '),time.);
put time= time.;
dt=dhms(date,0,0,time);
put dt datetime.;
run;
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.