Mysql(5.6版)层次结构在节点有多个父节点时查询所有父节点
为了找到我的答案,我搜索了很多,最相关的是 答案很好,但我发现当一个节点有多个父节点时,此解决方案不起作用。如下表所示:Mysql(5.6版)层次结构在节点有多个父节点时查询所有父节点,mysql,sql,hierarchy,Mysql,Sql,Hierarchy,为了找到我的答案,我搜索了很多,最相关的是 答案很好,但我发现当一个节点有多个父节点时,此解决方案不起作用。如下表所示: id, node_id, parent_id 1, 1, 2 2, 2, 3 <----- 3, 2, 4 <----- 4, 4, 5 5, 5, 6 6, 6, 7 i
id, node_id, parent_id
1, 1, 2
2, 2, 3 <-----
3, 2, 4 <-----
4, 4, 5
5, 5, 6
6, 6, 7
id,节点id,父节点id
1, 1, 2
2,2,3 MySQL 5.6不支持递归查询,因此您不能(安全地)通过一次选择来实现这一点。您可以使用递归存储过程,更改数据模型(在每行中包含完整的路径),或者升级到MySQL 8+。为了找到答案,我搜索了很多,最相关的一个是使用单查询(递归查询)查找MySQL表中的所有父级。这是一个伪解决方案,它强烈(或反向)要求parent\u id
对于除“仅一个父项”关系之外的所有记录。