А как лучше создать древовидный каталог?
Доброе утро.
Знаю что если хранить каталог по простому через parentId то выбрать только рекурсией получится, что не подходит. Делитесь что сами используете, нужно чтобы можно было добавлять новое в нужное место, редактировать, т.е. переносить существующее. Фреймворк думаю выбор падет на yii |
http://www.getinfo.ru/article610.html
Цитата:
|
На материализованных путях полно способов как, в т.ч. без рекурсии
|
laimas,
правильно указал на NESTED SETS но чем вам рекурсия не нравится. Она поддерживается наверное всеми современными базами данных и работает отлично |
Poznakomlus,
можно получить все, а уже результат рекурсивным обходом. А можно вообще без рекурсии получить все дерево, как: SELECT ... FROM t root LEFT JION t sub1 ON root.id = sub1.parent LEFT JION t sub2 ON sub1.id = sub2.parent .... LEFT JION t subN ON subM.id = subN.parent WHERE root.parent = 0 ORDER BY id если глубина вложения дерева ограничена. |
я бы предложил написать хранимые процедуры под данные задачи и этим пользоваться
в деревьях не самая трудная задача выборка ветви куда более сложная вставка, перенос надеяться на фреймворк который решит задачу не стоит, фреймворк служит для быстрой разработки как только вы столкнетесь с проблемами вам придется переписывать узкие места. |
Часовой пояс GMT +3, время: 06:57. |