![]() |
|
Модераторы: skyboy |
![]()
|
|
| tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
T(ID, PARENT)
Нужно получить скаляр с перечислением всех T.ID - "веток" данного T.ID=?IN_ID. Описал рекурсивную функцию с результатом group_concat(distinct id separator ?V_SEP). Говорит, нельзя использовать рекурсию. Описал функцию с временной таблицей без рекурсии. Уткнулся в сообщение о том, что невозможно открыть временную таблицу на чтение и запись одновременно. Нужна функция, возвращающая список идентификаторов, разделённых ?V_SEP. Это сообщение отредактировал(а) tishaishii - 7.10.2011, 07:03 |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
Nested set + group_concat
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
Расскажите подробнее о задумке.
Вот есть дерево с произвольным количеством прямых потомков каждого из узлов. Как можно получить скаляр со списком потомков данного узла? |
|||
|
||||
| gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: 3 Всего: 17 |
tishaishii, дерево большое само или маленькое?
для маленького дерева (как в большинства случаев) можно написать обычную рекурсию на ЯП. Если что, то данные прокэшировать, чтобы не делать большое количество лишних запросов. а если база большая и само дерево большое, у котором много узлов и детей, то тогда искать другие решения... рекурсия:
Добавлено через 4 минуты и 45 секунд про Nested set http://webscript.ru/stories/04/09/01/8197045
вот давно нашел статью: (не много по другому сделано) http://habrahabr.ru/blogs/perl/65495/ вот есть на триггерах: http://habrahabr.ru/blogs/mysql/63883/ http://habrahabr.ru/blogs/postgresql/63416/ не много старые http://doc.prototypes.ru/database/nestedsets/perl/module/ http://webscript.ru/stories/04/09/01/8197045 Это сообщение отредактировал(а) gcc - 7.10.2011, 22:21 |
||||
|
|||||
| tishaishii |
|
|||
![]() Создатель ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1262 Регистрация: 14.2.2006 Где: Москва Репутация: нет Всего: 8 |
В том-то дело, что на ЯП создать проблемы нет.
Хочется понять, есть ли возможность в MySQL с помощью SQL создать функцию, работающую с деревьями. Таблица T(ID, PARENT) дана. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |