Статус: Офлайн
Реєстрація: 14.06.2007
Повідом.: 13467
Реєстрація: 14.06.2007
Повідом.: 13467
Ну сколько можно, в чем хоть задача пресловутая состоит, можно узнать? Читать все лень
имеется таблица описывающая некоторое дерево:
mytree(id, parent_id, value_txt)
нужно написать SQL запрос рекурсивно выбирающий все дочерние элементы у узлов соответствующих некоторому условию, например value_txt='abc'
господин caballero заявляет что хранение дерева в таком виде - это ****окод и решить эту задачу без изменения структуры таблицы невозможно:
никак потому что это ****окод который пишут новички а потом чешут репу как пройтись по дереву - тащить в память или sql запросы рекурсивно гонять.
Вместо этого caballero предлагает добавить в таблицу дополнительное поле которое будет хранить путь от корня дерева к текущему ноду в виде списка id.
я добавляю дополнительное поле содержащее уровень узла и список его родителей и делаю любую выборку и даже любое удаление одним запросом.
Это и есть ПРАКТИЧЕСКОЕ програмирование.
На резонный вопрос - как он собирается проставлять значение этого поля для существующих в таблице данных, господин caballero заявляет что это уже другая задача и возлагает ее решение на DBA...



