Sql 递归查询(给定节点查所有父节点、所有子节点的方法)

– 查找所有父节点
with tab as
(
select Type_Id,ParentId,Type_Name from Sys_ParamType_V2_0 where Type_Id=316–子节点
union all
select b.Type_Id,b.ParentId,b.Type_Name
from
tab a,–子节点数据集
Sys_ParamType_V2_0 b --父节点数据集
where a.ParentId=b.Type_Id --子节点数据集.parendID=父节点数据集.ID
)
select * from tab;

– 查找所有子节点
with tab as
(
select Type_Id,ParentId,Type_Name from Sys_ParamType_V2_0 where Type_Id=1–父节点
union all
select b.Type_Id,b.ParentId,b.Type_Name
from
tab a,–父节点数据集
Sys_ParamType_V2_0 b–子节点数据集
where b.ParentId=a.Type_Id --子节点数据集.ID=父节点数据集.parendID
)
select * from tab;

–查找从子节点到定级节点的路径
with tab as
(
select Type_Id,ParentId,Type_Name,cast(Type_Id as varchar(100)) as fulltypeid
from SKU_ProductType where Type_Id=423–子节点
union all
select
b.Type_Id,b.ParentId,b.Type_Name,
cast(a.fulltypeid+‘,’+cast(b.Type_Id as nvarchar(100)) as varchar(100)) as fulltypeid
from
tab a,–子节点数据集
SKU_ProductType b --父节点数据集
where a.ParentId=b.Type_Id --子节点数据集.parendID=父节点数据集.ID
)
select * from tab ;

--------------结果--------------
423    410   蜂花粉      423
410    347   蜂产品      423,410
347    5      营养食品   423,410,347
5        0      健康保健   423,410,347,5

相关推荐

  1. 树形结构根据节点ID查找所有节点ID

    2023-12-06 11:36:04       17 阅读
  2. 记录一条查询子孙节点sql

    2023-12-06 11:36:04       17 阅读
  3. maya 遍历所有节点

    2023-12-06 11:36:04       12 阅读
  4. 查询指定节点和对应节点

    2023-12-06 11:36:04       40 阅读
  5. 链表所有节点

    2023-12-06 11:36:04       7 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-06 11:36:04       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-06 11:36:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-06 11:36:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-06 11:36:04       18 阅读

热门阅读

  1. Vue3中定义变量是选择ref还是reactive?

    2023-12-06 11:36:04       29 阅读
  2. KM算法,C语言版本和Matlab版本

    2023-12-06 11:36:04       35 阅读
  3. Flask 最佳实践(二)

    2023-12-06 11:36:04       30 阅读
  4. jQuery&layui

    2023-12-06 11:36:04       31 阅读
  5. xml中的特殊字符

    2023-12-06 11:36:04       26 阅读
  6. python实现模拟用户点击行为测试

    2023-12-06 11:36:04       35 阅读
  7. 使用Vue写一个日期选择器

    2023-12-06 11:36:04       39 阅读