Use INLINE view to solve your problem in which rows are sorted on the date.
Example:
Table TEST
columns ID NUmber , Name Varchar2(30), LOGDATE Date.

Similar to your query:

Select a.id, a.name, a.tdate
from ( select id, name, to_char(logdate, 'MON DD YYYY') tdate
from test order by logdate) a
union
Select b.id, b.name, b.tdate
from ( select id, name, to_char(logdate, 'MON DD YYYY') tdate
from test order by logdate) b
;


Use NVL on LOGDATE if it contains NULL values.