Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как отсортировать дерево в оракле??Не нарушая структуры...


Julya ©   (2004-02-17 09:38:00) 

Есть дерево подразделений, но надо его вывести, отсортировав по одному из полей. Пробовала использовать ORDER BY, нарушается структура дерева. Кто сталкивался с подобной проблемой, прошу, помогите пожалуйста!!!!
Вот дерево:
select
level, a.id, a.dept_id, a.name, a.sort_num
from hr_dept a
start with a.id = 336 // к примеру
connect by prior a.id = a.dept_id
--order by sort_num - не работает!!!


Julya   (2004-02-17 10:06:00) [1]

нашла функцию для 9-ки:
ORDER SIBLINGS BY NAME;
всем большое спасибо!!!!-)


Reindeer Moss Eater   (2004-02-17 09:59:00) [2]

Есть дерево подразделений, но надо его вывести, отсортировав по одному из полей. Пробовала использовать ORDER BY, нарушается структура дерева.

Если надо сортировать по полю, то зачем деревянный запрос?
И напротив - если деревянный запрос, то зачем его сортировать по какому бы то нибыло полю?

Если же речь идет о сортировке по полю в переделах иерархии ветки, то почти всегда можно заселектить псевдополе-выражение, сортировка по которому не нарушит иерархию.


Карелин Артем   (2004-02-17 09:53:00) [3]

Я оракл не юзаю, но в IB я бы сделал вложенные циклы на выбор данных с сортировкой во внутреннем цикле. В хранимой процедуре...


Julya   (2004-02-17 09:51:00) [4]

у меня 9 стоит... спасибо, пойду на sql.ru поищу!!!


Sergey13   (2004-02-17 09:45:00) [5]

В 8 гарантировано никак. Можно поэкспериментировать с индексами (указать хинтом конкретный индекс), но може аукнуться в производительности. В 9 вроде появилась какая то фича, но я не юзал 9, поэтому не знаю.
На SQL.RU были такие вопросы.


Наверх

Титульная страница Поиск, карта сайта Написать письмо