Деревья в базе данных
Такой вопрос. Как лучше хранить деревья в базе данных. Интересует сразу два варианта: маленькая база максимум до 1000 строк в таблице и от 100000 строк. Знаю существуют разные классы, но толком ничего найти не смог...
Код:
ID, ID_потомка, данные
Цитата:
Originally posted by mike
Самый просто и правильный вариант:
Самый просто и правильный вариант:
Код:
ID, ID_потомка, данные
А вот в некоторых местах рекомендуют для больших данннных использоать
id, left, right, level, data
Говорят увеличивается время поиска.
Цитата:
Originally posted by yack
А вот в некоторых местах рекомендуют для больших данннных использоать
id, left, right, level, data
Говорят увеличивается время поиска.
А вот в некоторых местах рекомендуют для больших данннных использоать
id, left, right, level, data
Говорят увеличивается время поиска.
Такая структура усложняет выполнения запроса типа Выбрать всю ветку, начиная с текущего узла. Придется использовать процедуры обхода по дереву с рекурсией.
А структура предложенная Mike аккуратном выборе алгоритмов формирования id и id_потомка позволяет свести такой запрос к достаточно тривиальному select.
Спасиба понял. А в принципе есть уже готовые классы, чтобы не изобретать велосипед?