I'm not sure what you mean by selecting entries...do you want a report (such as from PROC PRINT) or a dataset (such as from PROC SQL)???
If all you want is a report, you could use a WHERE clause in PROC PRINT. Something like this (assumes that date1 and date2 are numeric variables in the SAS dataset):
proc print data=lib.data;
title 'Use WHERE clause for selection';
where 10 between month(date1) and month(date2) and
(year(date1)=2009 or year(date2)=2009);
format date1 date2 mmddyy10.;
If the WHERE statement selects the observations you want in the PROC PRINT, then you could use the same WHERE logic in a PROC SQL query to create a dataset. If you know your data are all from 2009, then you don't need the check for year.
The SAS function INTNX can be used to test a SAS variable or constant against a SAS literal (or another SAS variable) as you might need -- using the test you performed for '01OCT2009'd. Check the SAS DOC on this function - also there will be sample code content and technical/conference papers using the function on the SAS.COM website.