Hello,
quick question, I want to count the number of observations in a table where the date is before another date. The format of my date column is YYMMDDN8. For example, if I want to count the number of observations that are before 20180430 I would have something like this:
proc sql;
select count(*)
from my.table
where datepart(datecolumn) < 20180430 ;
quit;
Thanks for your help
proc sql;
select count(*)
from my.table
where datecolumn< '30APR2018'd ;
quit;
Date values in SAS are stored as numericvalue that represents the number of days from January 1, 1960. DATEPART() is used to extract date from Datetime values. Since you have only date values you don't need datepart()
You could change the date value to a standard SAS date value. table values are unchanged just makes the where condition easier.
proc sql;
select count(*)
from my.table
where datepart(datecolumn) < '30APR2018'd ;
quit;
proc sql;
select count(*)
from my.table
where datecolumn< '30APR2018'd ;
quit;
Date values in SAS are stored as numericvalue that represents the number of days from January 1, 1960. DATEPART() is used to extract date from Datetime values. Since you have only date values you don't need datepart()
Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.
Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.
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.