Es un ordenamiento un tanto extraño, pero se puede haer usando dos sentencias SELECT, ambas con sus WHERE y ORDER BY respectivos.
El problema es que como cada segmento tiene su propio ORDER BY, y el UNION sólo admite uno en forma global para todo el resultado, entonces debe hacerse por subconsultas: