mysql语句 (递归查询)
SELECT MAX(s. LEVEL)-1 AS `level` FROM ( SELECT @l := @l + 1 AS LEVEL, @id := ( SELECT parent_id FROM cate WHERE id =@id ) FROM cate a, (SELECT @id := 3, @l := 0) b WHERE @id IS NOT NULL ) s
大致表(cate)如下:
| id | parent_id | name |
| 1 | 0 | aaa |
| 2 | 1 | bbb |
| 3 | 2 | ccc |
mysql代码块中@id := 3的数字改为你想要的那条信息的id,即可得出所在等级。
这篇博客介绍了如何使用MySQL查询具有层级关系的数据,通过一个具体的SQL语句展示如何递归获取某个ID所在的层级。示例中,从cate表中根据指定ID递归查找所有上级节点,直至顶层,得出其在整个层级结构中的位置。

被折叠的 条评论
为什么被折叠?



