如何使用MSQL 循环语句查找所有下级?

如何使用MSQL循环语句查找所有下级?注意:只要一条语句,不用foreach。

clipboard.png

如图:找出id=8的所有下级(包括自己)。图比较简单,注意也有可能存在下级,下下级。

怎么用MSQL一条语句查找得出如下结果:

id nodename
8   H
9   I
10  J
11  K
阅读 4.9k
5 个回答

我修改了回复,你看看下面截图是否你需要的效果
图片描述

你这问题跟这文档描述的一样你可以看下

下级,下下级,下下级。。。。这怎么实现,加个关系字段,记录所有上级关系
比如
id=8:__1__2__3__4——(1发展2发展3发展4)
id=9:——2——5——6——7——(2发展5发展6发展7)

如果要找2的下级,那么8,9就是了,like模糊查询,没有那么慢

建议还是加个字段比如叫path的字段吧,用来存层级关系,不然完全就是为了实现而实现,太影响数据库性能了。毕竟数据库的作用应该是存储而非计算,这种需要递归的业务,在数据库里面做,真不合适

目前你的表只有上级ID 你在加个来一个根级ID与层级数就OK了 查找所有属于这个根集中层级比自己层级低的数据就OK了

1 篇内容引用
推荐问题