我有一个表中的字段:MySQL选择链接到同一个表中的ID的所有行
父引用同一个表(不是外键)中的主键ID。
+----+--------+------------+
| ID | Parent | Title |
+----+--------+------------+
| 1 | 0 | Wallpapers |
| 2 | 1 | Nature |
| 3 | 2 | Trees |
| 4 | 3 | Leaves |
+----+--------+------------+
我想选择一行和所有的父母。例如,如果我选择“树叶”,我想获得“树木”,“自然”和“墙纸”,因为这是层次结构的父路径。这可能在一个查询中吗?目前我在ColdFusion中使用一个循环来获取每个迭代的下一个父节点,但效率不够高。
如果您选择自然,应该输出什么? –
大自然应该会返回壁纸,因为自然的父母是1,而1是壁纸。它不应该前进,找到那一条记录的所有父母。这是用于相册,所以认为它是递归相册里面,所以如果我在里面的专辑“自然”内的父母专辑是壁纸等。 –
为什么'叶'返回'自然'和'树'? “叶子”的父亲是'1',那就是“壁纸”。 – Barmar