> 데이터 베이스 > MySQL 튜토리얼 > mssql server 递归查询的sql语句

mssql server 递归查询的sql语句

WBOY
풀어 주다: 2016-06-07 17:48:18
원래의
1257명이 탐색했습니다.

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

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

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

递归实现SQL语句:

로그인 후 복사
 代码如下 复制代码
with znieyu as<br>(<br> c.Id,c.FatherId,0 as lv1 from ColumnTable c where c.Number=67<br>union all<br>select c.Id,c.FatherId,lv1-1 from znieyu z<br>inner join ColumnTable c <br>on z.FatherId=c.Id<br>)<br>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)

관련 라벨:
gt lv
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿