URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 4741
[ Назад ]
Исходное сообщение
"mysql хранение древовидной структуры"
Отправлено GHopper , 05-Мрт-07 12:58
Здравствуйте!
Какие методы бывают, в чем сила и слабость каждого, когда какой метод лучше использовать, есть-ли готовые php-классы?
Спасибо.
Содержание
- mysql хранение древовидной структуры,GHopper, 06:12 , 10-Мрт-07
- mysql хранение древовидной структуры,PS, 09:38 , 11-Мрт-07
- mysql хранение древовидной структуры,pavel_simple, 20:08 , 11-Мрт-07
- mysql хранение древовидной структуры,A, 08:51 , 15-Мрт-07
- mysql хранение древовидной структуры,BigHarry, 15:17 , 15-Мрт-07
Сообщения в этом обсуждении
"mysql хранение древовидной структуры"
Отправлено GHopper , 10-Мрт-07 06:12
неужели никого!?
"mysql хранение древовидной структуры"
Отправлено PS , 11-Мрт-07 09:38
>неужели никого!?
В Mysql обещали поддерживать Oracle подобный синтаксис connect by prior, но пока не сделали, возможно я ошибаюсь, так что обрабатывать таблицы code, code_parent -> code в Mysql только средствами SQL затруднительно. В Oracle это без проблем.
"mysql хранение древовидной структуры"
Отправлено pavel_simple , 11-Мрт-07 20:08
в postgresql и на sql'е можно сделать, и дополнительный модуль есть, который как раз для древовидных структур.
"mysql хранение древовидной структуры"
Отправлено A , 15-Мрт-07 08:51
То, как хранить зависит от того, что вам надо выбирать.
Классический способ: создать одну талицу с ветвями.
create table b (id int, info char, pid int);
где id -- уникальный идентификатор ветви, info -- что угодно (что вам от ветви надо), pid -- id родительской ветки.
Найти все ветки, идущие от данной ветки
select * from b where pid=NNN;
Найти все ветки, имеющие того же родителя, что и данная
select x.* from b as x, b as y where x.pid=y.pid and y.id=NNN;
Чаще всего, ничего более сложного и не надо. 95%, что и вам этого хватит.
"mysql хранение древовидной структуры"
Отправлено BigHarry , 15-Мрт-07 15:17
Возможно Nested Set вас устроит:
http://www.webscript.ru/stories/04/09/01/8197045