BookmarkSubscribeRSS Feed
oht
Calcite | Level 5 oht
Calcite | Level 5

Is there a quick date time format that can convert datatime(today()) into mmddyyyyhhmmss without any colon or space ? Thanks


2 REPLIES 2
CTorres
Quartz | Level 8

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;

hdodson_pacificmetrics_com
Calcite | Level 5

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

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

What is Bayesian Analysis?

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.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 2 replies
  • 1384 views
  • 0 likes
  • 3 in conversation