MSSQL中递归SQL查询语句实例说明-
更新时间:2011年09月23日 00:02:22 作者:
MSSQL中递归SQL查询语句分享,需要的朋友可以参考下。
一张表(ColumnTable)的结构如下图所示

当前需要实现的功能:通过Number的值为67来获取当前的节点ID、父节点ID
递归实现SQL语句:
复制代码 代码如下:
with znieyu as
(
select 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)
很简单的一个SQL递归,记录下来...
相关文章
SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询
这篇文章介绍了SQL Server使用CROSS APPLY与OUTER APPLY实现连接查询的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-05-05
MSSQL 2000 使用帮助(sql server简明教程)
这篇文章主要介绍了MSSQL 2000 使用帮助(sql server简明教程),需要的朋友可以参考下2017-04-04
SQLserver2019 Express安装及其一些问题解决
本文主要介绍了SQL server 2019 Express 安装及其一些问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-04-04
ROW_NUMBER SQL Server 2005的LIMIT功能实现(ROW_NUMBER()排序函数)
SQL Server 2005新增了一个ROW_NUMBER()函数,通过它可实现类似MySQL下的LIMIT功能。下面的语法说明摘自SQL Server 2005的帮助文件2012-06-06


最新评论