sql server实现递归查询的方法示例
本文实例讲述了sqlserver实现递归查询的方法示例。分享给大家供大家参考,具体如下:
有时候面对树结构的数据时需要进行递归查询,网上找了一番,参考了各位大神的文章,发现蛮简单的,当做个小笔记方便以后使用
sqlserver通过CTE来支持递归查询,这对查询树形或层次结构的数据很有用
一般的树形表结构如下,相信大家都很熟悉的
id
title
pid
1
1级节点
0
2
2级节点
1
3
3级节点
2
4
4级节点
3
5
5级节点
4
下面上代码
----------sqlserver递归查询---------- --查找上级所有节点 withuCteas ( selecta.id,a.title,a.pidfromtree_tableawhereid=3--当前节点 unionall selectk.id,k.title,k.pidfromtree_tablek innerjoinuCteconc.pid=k.id ) select*fromuCte; --查找上级所有节点 withdCteas ( selecta.id,a.title,a.pidfromtree_tableawhereid=3--当前节点 unionall selectk.id,k.title,k.pidfromtree_tablek innerjoindCteconc.id=k.pid ) select*fromdCte;
更多关于SQLServer相关内容感兴趣的读者可查看本站专题:《SQLServer查询操作技巧大全》、《SQLServer存储过程技巧大全》、《SQLServer索引操作技巧大全》、《SQLServer常用函数汇总》及《SQLServer日期与时间操作技巧总结》
希望本文所述对大家SQLServer数据库程序设计有所帮助。