Get it from what? From a datetime value, you could use the intnx function.
data _null_;
dt = '03APR2017:01:04:34'dt;
fd = intnx('dtmonth', dt, 0, 'B');
ld = intnx('dtmonth', dt, 0, 'E');
put dt datetime. fd datetime. ld datetime.;
run;
Output:
03APR17:01:04:3401APR17:00:00:0030APR17:23:59:59
Or for the current datetime:
data _null_;
dt = datetime();
fd = intnx('dtmonth', dt, 0, 'B');
ld = intnx('dtmonth', dt, 0, 'E');
put dt datetime. fd datetime. ld datetime.;
run;
See also: INTNX and INTCK Function Examples.
Get it from what? From a datetime value, you could use the intnx function.
data _null_;
dt = '03APR2017:01:04:34'dt;
fd = intnx('dtmonth', dt, 0, 'B');
ld = intnx('dtmonth', dt, 0, 'E');
put dt datetime. fd datetime. ld datetime.;
run;
Output:
03APR17:01:04:3401APR17:00:00:0030APR17:23:59:59
Or for the current datetime:
data _null_;
dt = datetime();
fd = intnx('dtmonth', dt, 0, 'B');
ld = intnx('dtmonth', dt, 0, 'E');
put dt datetime. fd datetime. ld datetime.;
run;
See also: INTNX and INTCK Function Examples.
Today() gives you a date, so you'd need to change the "dtmonth" to month.
datetime() will give you the current datetime value.
@JHE wrote:
If dt=today(), this would not working , dt would be dynamic variable .
data _null_;
dt = '03APR2017:01:04:34'dt;
fd = intnx('dtmonth', dt, 0, 'B');
ld = intnx('dtmonth', dt, 0, 'E');
put dt datetime. fd datetime. ld datetime.;
run;
In the future please make something like this your first post, not just a subject line with no content. When you post only a vague subject it's a processing of first trying to figure out your question before it can be answered, essentially playing 20 questions, which can be very annoying.
Maybe elaborate on your questions, post example test data in the form of a datastep, with what the output should look like. I am guessing:
data want; start="01APR2017:00:00:00"dt; end=input(cats(put(intnx('month',datepart(start),'e'),date9.),":23:59:59"),datetime.); format start end datetime.; run;
However with nothing to work with and no information...
Thank you, let me try this way .
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.