SqlServer中递归查询父节点及其所属子节点
SqlServer中递归查询父节点及其所属子节点
- 需求场景
- SQL脚本实现-根据子节点查询所有的父节点
- 查询结果
- SQL脚本实现-根据父节点查询所有的子节点
- 查询结果
需求场景
递归查询父节点及其所属子节点
SQL脚本实现-根据子节点查询所有的父节点
-- 查找所有父节点
with tab as
(select pc.id,pc.ParentId,pcd.Name,1 as [level] from ProductCategories pc join ProductCategoryDescriptions pcd on pcd.ProductCategoryId=pc.Id and pcd.LanguageId='en' --where id=1--子节点union allselect a.id--当前节点Id,b.ParentId,--父节点Idc.Name --父节点名称,关联可以修改为【a.Id=c.ProductCategoryId】就表示当前节点名称,a.[level]+1--层级fromtab a,--子节点数据集ProductCategories b , --父节点数据集ProductCategoryDescriptions c --父节点数据集where a.ParentId=b.Id and b.Id=c.ProductCategoryId and c.LanguageId='en' --子节点数据集.parendID=父节点数据集.ID
)
select * from tab where id=149;
查询结果
这里的Level是倒序的,也就是当前数据为第一层,level的大小由father、ancestors一次递增,max(level)表示祖先
SQL脚本实现-根据父节点查询所有的子节点
-- 根据父节点查找所有子节点
with a as (
select id, parentid from ProductCategories where id=124
union all
select x.id, x.parentid from ProductCategories x,a where x.parentid=a.id
)
select * from a
查询结果
这里的Level是倒序的,也就是当前数据为第一层,level的大小由father、ancestors一次递增,max(level)表示祖先
SqlServer中递归查询父节点及其所属子节点相关推荐
- zTree中父节点禁用,子节点可以用
参考学习网址:http://www.treejs.cn/v3/main.php#_zTreeInfo zTree中父节点禁用,子节点可以用 axios.get('/base/unit/unittree ...
- tree父节点不被选中和勾选(所以父节点)只选择子节点
tree父节点不被选中和勾选(所以父节点)只选择子节点 t = $.fn.zTree.init(t, setting, result); var zTree = $.fn.zTree.getZTree ...
- JavaScript-DOM-获取节点父、兄、子节点or元素
JavaScript-DOM-获取节点父.兄.子节点or元素 首先先来解释一下节点与元素的区别,不然真的会看的很懵啊!什么是节点?DOM规定:整个文档是一个文档节点,每个标签就是一个元素节点,也就 ...
- jstree禁用父节点点击_Jstree选中父节点时禁用子节点也被选中
这次给大家带来Jstree选中父节点时禁用子节点也被选中,解决Jstree选中父节点时禁用子节点也被选中的注意事项有哪些,下面就是实战案例,一起来看一下. 问题描述: 最近用jstree遇到一个问题, ...
- js获取树形JSON数据根节点到任一子节点路径
js获取树形JSON数据根节点到任一子节点路径 数据结构,deep表示节点深度 现在定义一个方法传入一个子节点对象,返回其对应路径. 首先遍历数据将遍历顺序放在一个数组中![首先递归遍历数据将遍历顺序 ...
- 【Groovy】自定义 Xml 生成器 BuilderSupport ( 构造 Xml 节点类 | 封装节点名称、节点值、节点属性、子节点 | 将封装的节点数据转为 Xml 字符串 )
文章目录 一.构造 Xml 节点类 1.封装节点名称.节点值.节点属性.子节点 2.将封装的节点数据转为 Xml 字符串 二.Xml 节点类完整代码 一.构造 Xml 节点类 生成 Xml 数据前 , ...
- 常用递归结构数据表,返会指点节点,跟其子节点的操作
内容来自机械工业出版的仓库管理系统设计一书 表结构{WareHouserID , ParentWarehouseID } 查询指定节点跟其子节点的信息 ALTER FUNCTION dbo.GetW ...
- JS监听页面元素删除子节点、增加子节点、修改子节点的内容
监听这个事件DOMSubtreeModified. 表示如果当前监听元素的子节点有改动:包括删除子节点.增加子节点.修改子节点的内容,都会触发这个事件. var container = documen ...
- mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
简介:mysql5.0.94版本,该版本以及较高级的版本(5.5.6等等)尚未支持循环递归查询,和sqlserver.oracle相比,mysql难于在树状表中层层遍历的子节点.本程序重点参考了下面的 ...
最新文章
- matlab 双边沿滤波,图片漫画效果(DoG算子和双边滤波)
- docker 容器安装conposer_Docker下用composer国内镜像安装Laravel
- 软件工程——团队作业3
- Django模板语言
- OAuth2.0详解
- matlab dll没有头文件,matlab调用dll没有头文件怎么办
- 从Nest到Nesk -- 模块化Node框架的实践
- 【诗和远方】一个蒟蒻的年初展望
- 从程序员到CTO也可以走捷径
- 基于网络电子海图的海洋气象信息服务系统
- JAVA以及常用开源框架读音发音和介绍
- 100以内奇数的平方和
- PHP 第三方调用 UC_Center用户登录认证
- 传统推荐模型——协同过滤
- 极路由 刷linux,极路由极壹HC6361刷OpenWrt固件教程
- CAN总线CSV格式报文转ASC格式报文
- 详解比较好的音视频通话SDK开发包的技术要点
- pg高可用之repmgr(一)
- 如何激发员工的积极主动性
- 物联网基础知识介绍及常见的几种无线通讯方式和应用