деревовидные связи MySQL и рекурсия

Модератор: Модераторы разделов

Аватара пользователя
gcc
Сообщения: 526
ОС: FreeBSD 8.0 CURRENT

деревовидные связи MySQL и рекурсия

Сообщение gcc »

подскжаите как сделать рекурсию, короче, геморойно выглядит функции на пхп, понять что-то сложно

нужно сделать на perl

как мне вытащить и построить дерево, вообще как правильно там сделать?

Код: Выделить всё

---------
id parent
---------
 3      0
 5      0
 7      0
10      3
11      7
12      5
13      3
16     10
21     16
26     11
30      3
47      7
60     10
73     13
75     47
---------


Код: Выделить всё



o- 3
|
+-o- 10
| |
| +-o- 16
| | |
| | +-o- 21
| |
| +-o- 60
|
+-o- 13
| |
| +-o- 73
|
+-o- 30

o- 5
|
+-o- 12

o- 7
|
+-o- 11
| |
| +-o- 26
|
+-o- 47
  |
  +-o- 75
Спасибо сказали:
Аватара пользователя
Voice
Сообщения: 1073
Статус: столлманист
ОС: Debian GNU/Linux

Re: деревовидные связи MySQL и рекурсия

Сообщение Voice »

Думаю лучше выбрать все одним запросом, а потом в памяти рекурсивно выбирать элементы для заданного предка (начиная с сирот).

P.S.
А можно похпапе функцию, на посмотреть?
"И может собственных Платонов и быстрых разумом Невтонов российская земля рождать."
М. В. Ломоносов
Спасибо сказали:
Аватара пользователя
gcc
Сообщения: 526
ОС: FreeBSD 8.0 CURRENT

Re: деревовидные связи MySQL и рекурсия

Сообщение gcc »

я вот нашел модуль, там еще несколько есть похожих, случайно увидел, думаю это то что нужно

http://search.cpan.org/~bjeps/DBIx-Tree-1.9/Tree.pm


Voice писал(а):
05.02.2009 01:57
Думаю лучше выбрать все одним запросом, а потом в памяти рекурсивно выбирать элементы для заданного предка (начиная с сирот).

P.S.
А можно похпапе функцию, на посмотреть?


http://www.phpclub.ru/detail/article/2002-06-03
http://coder-web.net/note/db_tree
Спасибо сказали: