Вам нужно определить минимальный id в каждой группе одинаковых брендов с помощью оконной функции, а потом сортировать по этому параметру в первую очередь.
-- тестовая выборка
with t as (select 1 id, 'eband' brand from dual union all
select 2, 'ebrand' from dual union all
select 3, 'abrand' from dual union all
select 4, 'ebrand' from dual )
-- запрос
select a.*
from (select t.*,
min(t.id) over (partition by t.brand) brand_min_id
from t
) a
order by brand_min_id, id
Результат:
id, brand, brand_min_id
1 eband 1
2 ebrand 2
4 ebrand 2
3 abrand 3