程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> 更多數據庫知識 >> MSSQL中遞歸SQL查詢語句實例說明-

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遞歸,記錄下來...

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved