一張表(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語句:
復(fù)制代碼 代碼如下:
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)
很簡單的一個(gè)SQL遞歸,記錄下來...
您可能感興趣的文章:- 基于mysql查詢語句的使用詳解
- 關(guān)于SQL Server查詢語句的使用
- T-SQL 查詢語句的執(zhí)行順序解析
- SQL Server SQL高級(jí)查詢語句小結(jié)
- SQL查詢語句通配符與ACCESS模糊查詢like的解決方法
- 防SQL注入 生成參數(shù)化的通用分頁查詢語句
- SQl 跨服務(wù)器查詢語句
- SQL查詢語句精華使用簡要
- SQL 查詢語句積累
- 基于SQL中的數(shù)據(jù)查詢語句匯總