Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.10;
Скачать: CL | DM;

Вниз

DELPHI, Paradox и древовидные структуры данных   Найти похожие ветки 

 
OneOfTheFew   (2003-03-20 13:29) [0]

Уважаемые Мастера !
Помогите решить такую задачу (желательно стандартными средствами: Delphi и Local SQL):

Есть парадоксовская таблица, описывающая древовидную стуктуру:
<Persons.db>
Person_id I
Parent_id I
Person_Name A(30)

Как получить список всех Person_id подчиненных указанному элементу непосредственно и опосредовано? Понятно, что глубина вложенности дерева практически не ограничена.

Заранее благодарю за помощь!


 
Соловьев ©   (2003-03-20 13:31) [1]

select PersonID
from Persons
where ParentId=10


 
OneOfTheFew   (2003-03-20 17:42) [2]

2 Соловьев

Не, Вы не поняли. Мне нужно "вычленить" поддерево все, а Ваше решение выдает только прямых "детишек". А как насчет "внуков" и "правнуков" ???


 
Соловьев ©   (2003-03-20 17:46) [3]

на парадоксе такое не решаемо...хотя в цыкле программно, а вот на IB и ему подобных с ХП вполне. www.ibase.ru там есть классные примеры...


 
Mike Kouzmine   (2003-03-20 17:50) [4]

Возьми пролог. Там это считается одной строчкой :)


 
Zelius ©   (2003-03-20 22:24) [5]

для твоей задачи может пригодиться такое решение: создать дополнительную таблицу Parent_ID, Person_ID, в которой будут харниться все пары Parent_ID со всеми возможными потомками Person_ID.

пример основной таблицы:
1 0 Петров
2 1 Иванов
3 2 Сидоров
4 2 Орлов
5 4 Козлов
а так будет выглядеть дополнительная таблица:
1 2
1 3
1 4
1 5
2 3
2 4
2 5
4 5


 
OneOfTheFew   (2003-03-21 14:05) [6]

Всем Спасибо!



Страницы: 1 вся ветка

Текущий архив: 2003.04.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.012 c
7-30627
AGGRESSOR
2003-02-04 15:08
2003.04.10
Объем видеопамяти


14-30588
Интересующийся
2003-03-25 20:43
2003.04.10
Операции AND и OR


3-30279
volodya_
2003-03-20 11:12
2003.04.10
ADO DBF


1-30459
Kron
2003-03-31 11:39
2003.04.10
Как обработать событье максимизации формы?


7-30616
Дмитрий С.
2003-02-14 23:44
2003.04.10
Уважаемые мастера помогите с выключение компьютера под WinXP