22.12.2010 06:01, PEAKTOP пишет:
> Ага, так и есть, сортировка при UNION ALL идет на фиг.
> Но прикладная прокто-стоматология не стоит на месте !
> ...

Действительно. Причём общий подзапрос можно вынести для компактности и
удобочитаемости:
with recursive
ORD_NODES as (
  select n.ID, n.PARENT_ID, n.TITLE, n.MODIFY, n.ORD_NUM
  from NODES n
  order by TITLE -- Сортировка
),
TREE as (
  select n.ID, n.PARENT_ID, n.TITLE, n.MODIFY, n.ORD_NUM
  from ORD_NODES n
  where n.PARENT_ID is null
  union all
  select n.ID, n.PARENT_ID, n.TITLE, n.MODIFY, n.ORD_NUM
  from ORD_NODES n
  inner join TREE t on t.ID = n.PARENT_ID
)
select t.ID, t.PARENT_ID, t.TITLE, t.MODIFY, t.ORD_NUM
from TREE t
-- 
Александр Замараев

Ответить