Non ho la possibiltà di provarlo, dunque non so se funziona, ma io nella clausula 'Order by' toglierei il datename del mese e lascerei solo la conversione da stringa a data, Order by Convert(date, datf, 105)