Is there a quick date time format that can convert datatime(today()) into mmddyyyyhhmmss without any colon or space ? Thanks
Try this
data want ;
format a datetime19.0 b z14.;
input a datetime.;
b=input(put(datepart(a),mmddyyn8.)||compress(substr(put(a,datetime19.0),12),':'),14.);
cards;
25jan2013:08:30:55
01jan2013:23:59:59
31dec2012:00:00:00
;
run;
oht,
I don't know of any format supplied out-of-the-box that does what you require. But you can make your own format:
proc format;
/*Decimal points disabled*/
PICTURE date_smash_up_a
low-high = '%0d%0m%Y%0H%0M%0S' (DATATYPE=datetime);
/*Decimal points enabled*/
PICTURE date_smash_up_b
low-high = '%0d%0m%Y%0H%0M%0s' (DATATYPE=datetime);
run;
data _null_;
now = datetime();
put "datetime18. : " now datetime18.;
put "date_smash_up_a18. : " now date_smash_up_a18.;
put "date_smash_up_b22.3 : " now date_smash_up_b22.3;
run;
The zero in "...%0M...", for example, inserts leading zeros into the month number when applicable.
Hope this helps,
Huey
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.