Хранение дерева в таблице mySQL |
Здравствуйте, гость ( Вход | Регистрация )
Хранение дерева в таблице mySQL |
NetWorm |
21.9.2012, 20:50
Сообщение
#1
|
Студент Группа: Участник Сообщений: 24 Регистрация: 2.8.2011 Пользователь №: 2784 Спасибо сказали: 0 раз(а) Репутация: 0 |
Вобщем имеется древовидная структура. Пример зал театра.
Основной зал |-Амфитеатр левая сторона |-Ряд 01 |-Ряд 02 |-Ряд 03 |-Амфитеатр правая сторона |-Ряд 01 |-Ряд 02 |-Ряд 03 Вот суть такая. Это можно представить в виде одной таблицы с полями.. id, name, parent В данном случае она будет выглядеть вот так id|Name |parent 1|Основной зал |NULL - т.е. самый верхний уровень 2|Амфитеатр левая сторона|1 - ссылка на верхний уровень 3|Ряд 01 |2 - ссылка на "Амфитеатр левая сторона" 4|Ряд 02 |2 - ссылка на "Амфитеатр левая сторона" Вопрос. Как мне получить данные например Ряд 01 | Основной зал. т.е. получить через Ряд 01 мы можем получить строку Амфитеатр, а через амфитеатр можем получить Основной зал. Сложность в том что уровней может быть разное количество. |
|
|
Алексей1153 |
22.9.2012, 16:23
Сообщение
#2
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
NetWorm, глянь вот тут http://club.shelek.ru/view.php?id=57 статьи
"MySQL. Иерархические запросы." и "MySQL. Деревья. Добавление материализованного пути к паре id—parent_id." - вроде как раз об этом |
|
|
Текстовая версия | Сейчас: 1.12.2024, 8:19 |