Как запросить график / иерархические данные в MySQL
Предположим, у меня есть таблица объектов, структурированных в иерархии:
A
|--B
|--C
| +--D
+--E
Они хранятся вродитель-ребенок» Таблица таким образом:
parent child
A B
A C
C D
A E
Как я могу запросить это, чтобы получить структуру, определенную выше? Я думаю, что мне нужно что-то, что производит такую информацию:
object full_path
A NULL
B A
C A
D A.C
E A
Я не могу понять, как сделать объекты, вложенные глубже, чем на один уровень. Такое ощущение, что мне может понадобиться перебрать таблицу (понятия не имею, возможно ли это в SQL), или иным образом использовать какой-то запрос I 'мы никогда не сталкивались раньше.
Дополнительная информация:
Не обязательно быть единственным объектом-сиротой.У детей может быть несколько родителей, НО пока яЯ доволен ответом на любой сценарий, который легче решить. Я могу преобразить преобразование структуры с несколькими родителями в одного родителя с помощью простогоGROUP BY
а такжеMIN
заявление.