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

Вниз

Уважаемые мастера, подскажите алгаритм получения всех "Child-ов"   Найти похожие ветки 

 
antoxa2005   (2005-11-27 11:19) [0]

Алгаритм получения всех "Child-ов" и "Parent-ов".

Есть таблица с полями ID и ParentID со стандартной зависимость для дерева. Как узнать все ID подчинененных конкретному ID записей и всех его записей-вледельцев.

Т.е. в принципе построение дерева на основе данных с неопределенным количество веток.


 
TUser ©   (2005-11-27 11:54) [1]

Речь, видимо, про таблицу где-то в БД. Тогда

SELECT id
FROM ...
WHERE Parent = MyId


 
Fay ©   (2005-11-27 11:56) [2]

2 antoxa2005   (27.11.05 11:19)
На клиенте?


 
antoxa2005   (2005-11-27 12:01) [3]


> Речь, видимо, про таблицу где-то в БД. Тогда


Да, но набо получить не прямых потомков а всех. Т.е. SELECT id
FROM ...
WHERE Parent = MyId, а у каждого выбранного могут быть еще и еще и неизвестно сколько.

Как "пробежать" до конца не могу придумать.


 
jack128 ©   (2005-11-27 12:05) [4]

написать рекурсивную SP. Если твоя СУБД таковые поддерживает.


 
antoxa2005   (2005-11-27 12:17) [5]

Не знаю, а что это?


 
OldNaum ©   (2005-11-27 12:34) [6]

antoxa2005   (27.11.05 12:17) [5]
SP = Stored Procedure = Хранимая процедура


 
antoxa2005   (2005-11-27 12:35) [7]

Ок. pyfxbn SP есть, а как написать рекурсивную SP. Подскажите...


 
antoxa2005   (2005-11-27 12:36) [8]

Ошибочка! Исправляю.

Ок. значит SP есть, а как написать рекурсивную SP. Подскажите...


 
Fay ©   (2005-11-27 12:38) [9]

2 antoxa2005   (27.11.05 12:35) [7]
СУБД, конечно, DB2?


 
antoxa2005   (2005-11-27 12:40) [10]

СУБД Access, SP есть, язык SQL, помогите подкиньте алгоритм...


 
Fay ©   (2005-11-27 12:42) [11]

2 antoxa2005   (27.11.05 12:40) [10]
В Access есть SP ?! Не знал...


 
antoxa2005   (2005-11-27 12:43) [12]

А они там есть и нормально работают.


 
Fay ©   (2005-11-27 12:45) [13]

2 antoxa2005   (27.11.05 12:43) [12]
И какая глубина рекурсии поддерживается?


 
antoxa2005   (2005-11-27 12:48) [14]

Я не знаю. Дайте пример рекурсии, я проверю какая глубина  поддерживается.


 
Fay ©   (2005-11-27 12:50) [15]

3 antoxa2005   (27.11.05 12:48) [14]
см. ответ [14]


 
Fay ©   (2005-11-27 12:50) [16]

2 antoxa2005   (27.11.05 12:48) [14]
Блин! Конечно, см. [16]


 
antoxa2005   (2005-11-27 12:53) [17]

Что значит "Блин! Конечно, см. [16]" где смотреть, это же и есть

"Fay ©   (27.11.05 12:50) [16] "


 
Fay ©   (2005-11-27 12:54) [18]

2 antoxa2005   (27.11.05 12:53) [17]
это был пример рекурсии


 
antoxa2005   (2005-11-27 12:58) [19]

Это вроде циклическая ссылка. Я понял но как это с помощью SP?


 
antoxa2005   (2005-11-27 12:59) [20]

У меня осталось 2 мин Internet


 
Fay ©   (2005-11-27 13:01) [21]

2 antoxa2005   (27.11.05 12:58) [19]

procedure _rec (var n : integer; var s : String);
begin
 Inc(n);  
 if n < 99
   _rec(n, s);
 s := s + "1";
end;


 
Fay ©   (2005-11-27 13:02) [22]

2 antoxa2005   (27.11.05 12:59) [20]
Если до тебя ещё не дошло, что такое рекурсия, читай [22]


 
ItMan ©   (2005-11-27 16:00) [23]


> antoxa2005   (27.11.05 12:59) [20]

Думаю тебе поможет
http://www.sql.ru/forum/actualthread.aspx?bid=3&tid=212689&hl=%f0%e5%ea%f3%f0%f1%e8%ff


> Fay ©   (27.11.05 13:02) [22]

Вместо того, чтобы над человеком глумится, лучше бы молчал.


 
Fay ©   (2005-11-27 20:32) [24]

2 ItMan ©   (27.11.05 16:00) [23]
>> Думаю тебе поможет
Интересно, каким образом это поможет в Access...

>> Вместо того, чтобы над человеком глумится, лучше бы молчал.
1) Не нужно мне указывать - на форуме есть специальные люди для этого.
2) Никто и не глумится. Я достаточно ясно выразился.
3) Тут не форум для блондинок, и (по-моему) понятие о рекурсии у antoxa2005 должно было быть ещё до 27.11.05 11:19.


 
antoxa2005   (2005-11-28 12:21) [25]


> 3) Тут не форум для блондинок


Ну это точно не про меня... Просто я не знаю точного определения, а ни когда не было необходимости пользоваться, а может и было, но не задумывался что это именно рекурсия. К сожелению доступа до литературы временно не имею, а построение древовидной структуры на основе БД с ID и ParentID сам что-то не осилю.


> Думаю тебе поможет
> http://www.sql.ru/forum/actualthread.aspx?bid=3&tid=212689&hl=%f0%e5%ea%f3%f0%f1%e8%ff


Ценная ссылка, спасибо!



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

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

Наверх




Память: 0.52 MB
Время: 0.05 c
14-1133138436
Kerk
2005-11-28 03:40
2005.12.25
Samara Mastak Party


2-1133372806
SpyBoy
2005-11-30 20:46
2005.12.25
*.pwl


14-1133268593
Mike Kouzmine
2005-11-29 15:49
2005.12.25
Бедные немцы!


2-1134100759
root911
2005-12-09 06:59
2005.12.25
Компонент


6-1127134580
Tigraman
2005-09-19 16:56
2005.12.25
Cкачивание файла