with ct ---定义一个公用表 ct, 用于递规查询。
as (
    select * from MainMenuTree where cMenuID='01'  ---根节点条件
    union all
    select b.* from ct inner join MainMenuTree b 
        on b.cParentID= ct.cMenuID  ---子节点递规条件 
 ) select * from ct; 

注意:子节点层级不能超过100层,否则报错。超过100层可尝试用游标查询。 

 

SqlServer递归查询

相关文章: