Sorting by month by chronological occurrence when the year doesn't matter?
Test data

create table dates ( d date);
insert dates values ('2012-01-01')
,('2008-01-01')
,('2008-02-01')
,('1987-01-02')
,('1994-12-28')
,('1987-05-02')
,('1994-11-28')


Query

select d, DATE_FORMAT(d, "%m-%d") 
from dates
join (select 11 ms, 2 me) params
where ms&lt;=me and MONTH(d) between ms and me
  or ms&gt;me and (MONTH(d) &gt;=ms or MONTH(d) &lt;= me)
order by case when MONTH(d) &lt; ms then 100+MONTH(d) else MONTH(d) end