您好,欢迎来到91美食网。
搜索
您的当前位置:首页mssqlserver递归查询的sql语句

mssqlserver递归查询的sql语句

来源:91美食网


下面介绍一下关于mssql server中使用递归的sql查询语哦,有需要的朋友可以参考一下。

张表(ColumnTable)的结构如下图所示

当前需要实现的功能:通过Number的值为67来获取当前的节点ID、父节点ID

递归实现SQL语句:

代码如下
with znieyu as
(
c.Id,c.FatherId,0 as lv1 from ColumnTable c where c.Number=67
union all
select c.Id,c.FatherId,lv1-1 from znieyu z
inner join ColumnTable c
on z.FatherId=c.Id
)
select znieyu.Id ,znieyu.FatherId,znieyu.lv1 as lv from znieyu
实现的效果:

满足条件67ID为6的递归-->6-->2(LV0)-->1(LV-1)-->0(LV-2)

满足条件67ID为8的递归-->8-->5(LV0)-->2(LV-1)-->1(LV-2)-->0(LV-3)

Copyright © 2019- 91mote.com 版权所有

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务