Mysql (версия 5.6) иерархия запрашивает всех родителей, когда узлы имеют более одного родителя - PullRequest
0 голосов
/ 13 января 2020

Я много искал, чтобы найти свой ответ, самый связанный - Поиск всех родителей в таблице mysql с одним запросом (Рекурсивный запрос)

Ответ отличный , но я обнаружил, что это решение не работает, когда один узел имеет более одного родителя. Таблица, подобная этой:

id, node_id, parent_id
 1,       1,         2
 2,       2,         3    <-----
 3,       2,         4    <-----
 4,       4,         5
 5,       5,         6
 6,       6,         7

Обратите внимание, что строка 2 и строка 3, узел с node_id=2 имеет более одного родителя.

Ответ, упомянутый выше, будет возвращать только родительский идентификатор 2, 3, 4 когда node_id=1, что не соответствует действительности. (Должно быть 2, 3, 4, 5, 6, 7)

...