Теперь, когда мы научились строить путь до элемента, можем отсортировать строки, чтобы дочерние элементы одного родителя находились рядом и были отсортированы между собой.

Отсортируем строки по пути до элемента:

WITH RECURSIVE lv_hierarchy AS (
  SELECT c.category_id,
         c.parent_category_id,
         c.name,
         1 AS level,
         '/' || c.name AS path
    FROM category c
   WHERE c.parent_category_id IS NULL

   UNION ALL

  SELECT c.category_id,
         c.parent_category_id,
         c.name,
         p.level + 1 AS level,
         p.path || '/' || c.name AS path
    FROM lv_hierarchy p,
         category c
   WHERE c.parent_category_id = p.category_id
)
SELECT *
  FROM lv_hierarchy
 ORDER BY path
# category_id parent_category_id name level path
1 1 NULL Товары для дома 1 /Товары для дома
2 3 1 Бытовая техника 2 /Товары для дома/Бытовая техника
3 2 NULL Цифровая техника 1 /Цифровая техника
4 7 2 Аудиотехника 2 /Цифровая техника/Аудиотехника
5 6 2 Игровые консоли 2 /Цифровая техника/Игровые консоли
6 4 2 Ноутбуки и аксессуары 2 /Цифровая техника/Ноутбуки и аксессуары
7 9 4 Ноутбуки 3 /Цифровая техника/Ноутбуки и аксессуары/Ноутбуки
8 10 4 Рюкзаки 3 /Цифровая техника/Ноутбуки и аксессуары/Рюкзаки
9 8 2 Сотовые телефоны 2 /Цифровая техника/Сотовые телефоны
10 5 2 Фотоаппараты 2 /Цифровая техника/Фотоаппараты

P.S. Такая сортировка не является надежной! Читай дальше)

10.7 Путь до элемента

10.9 Сортировка (надежная)