Дерево в SQL
От: Pavel Dvorkin Россия  
Дата: 26.07.19 10:57
Оценка:
Добрый день!

Надо разместить в SQL дерево произвольной арности.
Понятно, таблица treeitem и в ней parentId как FK на ее же id
Проблема же вот в чем. У дерева должен быть заголовок, содержащий данные, относящиеся к дереву в целом, а не к элементам. Хорошо, еще таблица tree
А теперь вопрос — как их связать ? Необходимо, чтобы можно было 1) по tree.id получить корень его дерева и 2) имея treeitem.id любого элемента дерева, можно было получить заголовок дерева

Пока вижу только одно решение — в каждом treeitem иметь treeId как FK на tree. Однако это значит, что у всех узлов этого дерева будет храниться этот treeId, что есть дублирование данных.
Можно ли его избежать ?
With best regards
Pavel Dvorkin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.