sql如何进行父子关系遍历

 时间:2024-10-12 20:21:45

1、先建立需要测试的表格,及插入测试数据Create 哌囿亡噱Table A(IDInt,fatherIDInt,NameVarchar(10))Insert A Select 1, NULL, 'tt'Union All Select 2, 1, 'aa'Union All Select 3, 1, 'bb'Union All Select 4, 2, 'cc'Union All Select 5, 2, 'gg'Union All Select 6, 4, 'yy'Union All Select 7, 4, 'jj'Union All Select 8, 7, 'll'Union All Select 9, NULL, 'uu'Union All Select 10, 9, 'oo'GO

sql如何进行父子关系遍历

2、执行该语句,得到相应的数据库表格和数据

sql如何进行父子关系遍历

3、创建相应的遍历函数Create Function GetChildren(@ID Int拘七呷憎)Returns @Tree Table (ID Int, fatherID Int, Na罪焐芡拂me Varchar(10))AsBeginInsert @Tree Select ID, fatherID, Name From A Where fatherID = @IDWhile @@Rowcount > 0Insert @Tree Select A.ID, A.fatherID, A.Name From A A Inner Join @Tree B On A.fatherID = B.ID And A.ID Not In (Select ID From @Tree)ReturnEndGO

sql如何进行父子关系遍历

4、现在进行测试下函数的执行效果Select * From dbo.GetChildren(1)GO

sql如何进行父子关系遍历

5、删除测试Drop Table ADrop Function GetChildren--結果/*IDfatherIDName21aa31bb42cc52gg64yy74jj87ll

  • 工伤十级自己提离职如何赔偿
  • 王者荣耀王者模拟战怎么进
  • 东风风光580汽车的配件有哪些
  • 平板进水了没声音怎么办
  • 中国联通如何查找携号入网业务?
  • 热门搜索
    与法同行手抄报 关于宇宙的手抄报 唐山世园会手抄报 有关阅读的手抄报 重阳节最漂亮手抄报 文明礼仪手抄报诗歌 走进名著手抄报内容 城南旧事手抄报 五一手抄报内容大全 防火手抄报图片大全