I have a date field that includes hours/minutes/seconds (e.g., '10SEP2012:0:0:0')dt). I need the data to include only day/month/year (e.g., '10SEP2012'd instead of '10SEP2012:0:0:0')dt. I created a new field based on the original date field using a computed column: put(datepart(t1.BirthDate), date9.). The data looks right, but now I cannot filter using the BETWEEN function because the dates are in a character format. There has got to be a better and different way to get rid of the hours/minutes/seconds and keep the date in a format that can be filtered as needed.
Thanks for ideas . . .
William
Just create the new variable as datepart(t1.birthdate) to get a SAS date variable and should work with between and date literals. The "put" is what made it a string result.
Just create the new variable as datepart(t1.birthdate) to get a SAS date variable and should work with between and date literals. The "put" is what made it a string result.
This appears to work perfectly. Thanks so much, really appreciated!
Wm
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.