Как запросить график / иерархические данные в MySQL

Предположим, у меня есть таблица объектов, структурированных в иерархии:

A
|--B
|--C
|  +--D
+--E

Они хранятся в «parent-child» Таблица таким образом:

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) или каким-то другим образом использовать какой-либо запрос, с которым я никогда раньше не сталкивался.

Дополнительная информация:

A need not be the only orphan object. Children may have multiple parents BUT for now I'm happy with an answer to whichever scenario is easier to solve. I can abide converting a multi-parent structure to a single parent with a simple GROUP BY and MIN statement.

Ответы на вопрос(5)

Ваш ответ на вопрос