Greetings,
I'm trying to manually create some rows in a table, with the insert to statement, coded looks like this:
proc sql;
insert into lib.table values(
'OPEN',
10001,
10041,
10004,
'13',
'ACT');
quit;
My question is, how do I insert a date such as (01JAN2017) so that it is a valid SAS date?
Thanks in advance.
for datetime use '01jan2017:00:00:00'dt
Try next code:
proc sql;
insert into lib.table values(
'OPEN',
10001,
10041,
10004,
'13',
'ACT',
'01jan2017'd
);
quit;
Thank you for your help, Shmuel, the answer you provided is correct.
However, it made me figure out that the column I'm trying to fill is actually datetime with a format of DATETIME22.3
I tried adjusting your solution to '01jan2017'dttm but it did not work.
for datetime use '01jan2017:00:00:00'dt
Please don't be a lazy programmer and name datetime values as dates. When crossing the boundary to SAS the values are quite different and functions/actions that will work on DATES will either fail or create very unexpected results when used with DATETIMES (and vice versa).
@Datino - if you decide to convert datetime to date use next code to do it:
date_var = datepart(datetime_var);
format date_var date9.;
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 save with the early bird rate—just $795!
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.