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
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 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.