Anda dapat melakukan ini dengan menambahkan peringkat pseudo-kolom bernama ke setiap pilihan, yang dapat Anda urutkan terlebih dahulu, sebelum mengurutkan berdasarkan kriteria Anda yang lain, mis.:
select *
from (
select 1 as Rank, id, add_date from Table
union all
select 2 as Rank, id, add_date from Table where distance < 5
union all
select 3 as Rank, id, add_date from Table where distance between 5 and 15
) a
order by rank, id, add_date desc