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;
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.
Ready to level-up your skills? Choose your own adventure.