In any case, you should normalize your table and save the dates using mysql date and time data types and make sure you save them in the two columns start_date and end_date . It will make your life easier.
Now, returning to the current situation, you can do this, first extract the start and end date from the varchar string using the substring_index function and finally use them in the condition using the having .
select str_to_date(substring_index(period,'to',1),'%Y-%m-%d') as start_date, str_to_date(substring_index(period,'to',-1),'%Y-%m-%d') as end_date, period from table_name having start_date >='2014-09-01' and end_date <='2014-09-30';
source share