MSSQL中遞歸SQL查詢語句實(shí)例說明-
一張表(ColumnTable)的結(jié)構(gòu)如下圖所示

當(dāng)前需要實(shí)現(xiàn)的功能:通過Number的值為67來獲取當(dāng)前的節(jié)點(diǎn)ID、父節(jié)點(diǎn)ID
遞歸實(shí)現(xiàn)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
實(shí)現(xiàn)的效果:

滿足條件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)
很簡(jiǎn)單的一個(gè)SQL遞歸,記錄下來...
相關(guān)文章
sqlserver查詢?nèi)サ糁貜?fù)數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了sqlserver查詢?nèi)サ糁貜?fù)數(shù)據(jù)的實(shí)現(xiàn)操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2021-01-01
高并發(fā)系統(tǒng)數(shù)據(jù)冪等的解決方案
本文主要介紹高并發(fā)系統(tǒng)數(shù)據(jù)冪等解決方案,這里整理了幾種方案供大家參考,有需要的小伙伴可以參考下2016-08-08
SQL Server使用CROSS APPLY與OUTER APPLY實(shí)現(xiàn)連接查詢
這篇文章介紹了SQL Server使用CROSS APPLY與OUTER APPLY實(shí)現(xiàn)連接查詢的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05
MSSQL??附加數(shù)據(jù)庫提示“錯(cuò)誤?823”數(shù)據(jù)恢復(fù)實(shí)操
這篇文章主要介紹了MSSQL?2000?附加數(shù)據(jù)庫提示“錯(cuò)誤?823”數(shù)據(jù)恢復(fù)實(shí)操,報(bào)錯(cuò)823一般數(shù)據(jù)庫的物理頁面出現(xiàn)了損壞或者校驗(yàn)值損壞導(dǎo)致數(shù)據(jù)庫頁面無法被識(shí)別還有異常斷電導(dǎo)致的文件系統(tǒng)損壞,數(shù)據(jù)庫頁面丟失,下面針對(duì)錯(cuò)誤?823對(duì)數(shù)據(jù)進(jìn)行恢復(fù),需要的朋友可以參考一下2022-03-03
MSSQL 2000 使用幫助(sql server簡(jiǎn)明教程)
這篇文章主要介紹了MSSQL 2000 使用幫助(sql server簡(jiǎn)明教程),需要的朋友可以參考下2017-04-04
SQLserver2019?Express安裝及其一些問題解決
本文主要介紹了SQL?server?2019?Express?安裝及其一些問題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
ROW_NUMBER SQL Server 2005的LIMIT功能實(shí)現(xiàn)(ROW_NUMBER()排序函數(shù))
SQL Server 2005新增了一個(gè)ROW_NUMBER()函數(shù),通過它可實(shí)現(xiàn)類似MySQL下的LIMIT功能。下面的語法說明摘自SQL Server 2005的幫助文件2012-06-06

