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
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
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.