sql递归查询,查询所有子节点数据

今天遇到一个问题,有一张表,父级运营商、子运营商通过Id、RootId来确认父子关系。子运营商存在N级。而我需要通过某父级ID来获取旗下所有子运营商。用代码来实现太过麻烦,这时候sql递归会大大提高查询速度,下面是解决案例:

with ChildMenu as(
select * from 数据表
where Id= '父级ID' 
union all select 数据表.* from 数据表 inner join ChildMenu 
on 数据表.RootId=  ChildMenu.Id) 
select *  from ChildMenu

为您推荐

发表评论

您的电子邮箱地址不会被公开。