我将尝试使用这个参考链接(http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/)在MYSQL中展示树形结构,注意此方法只支持同一表格内的1个父节点。
如果你想要和另一个表格进行连接,则无法实现。以下是一个例子:
我正在尝试在同一SELECT语句中按顺序排列他们的子项。
从我在示例中看到的情况来看,只有当父项在同一张表中时才有效。
有人能帮帮我吗? 谢谢
如果你想要和另一个表格进行连接,则无法实现。以下是一个例子:
菜单表格:
+----+--------+-------+
| id | name | order |
| 1 | Father | 0 |
| 2 | Father | 1 |
| 3 | Son | 0 |
| 4 | Child | 1 |
| 5 | Granson| 2 |
+----+--------+-------+
表关系
+----+---------+-----------+
| id | menu_id | parent_id |
| 1 | 1 | NULL |
| 2 | 2 | NULL |
| 3 | 3 | 1 |
| 4 | 4 | 3 |
| 5 | 5 | 4 |
+----+---------+-----------+
执行SELECT语句
SELECT child_menu.*, menu.* FROM menu, relations AS child_menu
WHERE menu.id = child_menu.menu_id
GROUP BY menu_id
我有这个:
+----+--------+-------+
| id | name | order |
| 1 | Father | 0 |
| 2 | Father | 1 |
| 3 | Son | 0 |
| 4 | Child | 1 |
| 5 | Granson| 2 |
+----+--------+-------+
我正在尝试在同一SELECT语句中按顺序排列他们的子项。
从我在示例中看到的情况来看,只有当父项在同一张表中时才有效。
有人能帮帮我吗? 谢谢
+----+--------+-------+
| id | name | order |
| 1 | Father | 0 |
| 3 | Son | 0 |
| 4 | Child | 1 |
| 5 | Granson| 2 |
| 2 | Father | 1 |
+----+--------+-------+
I.E. Father
Son
Child
Grandson