用with实现递归查询

1、数据准备

假定有一个表DiGui,有两个字段Id int ParentId int

Id ParentId

4 0

5 0

7 0

2 1

8 5

15 5

9 7

14 11

30 15

23 15

41 18

104 23

42 30

39 30

53 39

67 39

88 39

107 39

2、目的:通过传入ParentId(=5),返回该记录的所有递归数据,即

Id ParentId

8 5

15 5

30 15

23 15

42 30

39 30

53 39

67 39

88 39

107 39

3Sql语句实现

with temp ( [Id], [parentid]) as ( select Id, parentid from DiGui where [parentid] = 15 union all select a.Id, a.parentid from DiGui a inner join temp on a.[parentid] = temp.[Id] ) select * from temp

转自:http://www.cnblogs.com/gossip/p/3851021.html

sql with 递归查询的更多相关文章

  1. MS SQL Server递归查询

    原文:MS SQL Server递归查询 刚才在论坛上看到网友一个要求.参考如下,Insus.NET分析一下,可以使用MS SQL Server的递归查询,得到结果.准备一张表: 根据网友提供的数据, ...

  2. sql 树形递归查询

    sql 树形递归查询: with ProductClass(ClassId,ClassName) as ( union all select c.ClassId,c.ClassName from Cl ...

  3. SQL SERVER递归查询

    SQL SERVER 进行递归查询 有如下数据表

  4. 【Sql Server】SQL SERVER 递归查询

    SQL SERVER 2005之前的版本只能用函数方法实现,SQL SERVER 2005之后新增了CTE功能,可以利用CTE实现递归查询: CTE:公用表达式Common Table Express ...

  5. sql语句递归查询(start with)

    在做项目中遇到一个问题,就是同一个表中的数据存在级联关系,但是只要查出来的末级数据,纠结了好久,好不容易找到了一个博主的分享,在这里做个记录,也是和大家一起分享学习一下这位大神的技术,共勉 写代码时碰 ...

  6. [SQL]T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)

    T-Sql 递归查询(给定节点查所有父节点.所有子节点的方法)   -- 查找所有父节点with tab as( select Type_Id,ParentId,Type_Name from Sys_ ...

  7. SQL 语句递归查询 With AS 查找所有子节点

    create table #EnterPrise (   Department nvarchar(50),--部门名称   ParentDept nvarchar(50),--上级部门   Depar ...

  8. Sql Server递归查询(转)

    有如下数据表 假如我们要查询ID为003的数据的所有子节点我们可以使用CTE 递归查询完成... if OBJECT_ID('tb','N') is not null drop table tb; c ...

  9. SQL SEVER 递归查询

    with ts as ( --首先要查询出最原始父级的信息 union all --全连接 select a.fitemclassid,a.fitemid, a.fnumber,a.Fparentid ...

随机推荐

  1. [POI2014]Tourism

    题目大意: 给定一个$n(n\le20000)$条个点,$m(m\le25000)$条边的无向图,保证图中最长路径上的点数不超过$10$.对一个点染色的代价是$w_i$.求使得每个结点都被染色或至少有 ...

  2. BZOJ 3864 Hero Meets Devil

    题目大意 给定一个由AGCT组成的串\(t\), 求对于所有的\(L \in [1, |t|]\), 有多少个由AGCT组成的串\(s\)满足\(LCS(s, t) = L\). Solution 传 ...

  3. NOI2014 部分题解

    感觉NOI2014的一些题目也是比较好做的... 但是笔者往往有思路却没有想清楚就开始搞了...这样还是不太好.. Day1 T1 起床困难综合征  (我感觉这题应该叫综合征不是综合症...)   a ...

  4. kubernetes1.5.2--部署监控服务

    本文基于kubernetes 1.5.2版本编写 Heapster是kubernetes集群监控工具.在1.2的时候,kubernetes的监控需要在node节点上运行cAdvisor作为agent收 ...

  5. windows和linux之间上传下载文件的两种方法

    一    用rz和sz http://blog.csdn.net/register_man/article/details/53860774 http://www.jb51.net/article/7 ...

  6. wireshark问题现象分析

    讲的非常透彻:建议学习 wireshark问题现象分析1:参考博客1 https://blog.csdn.net/u012398362/article/details/52276067 wiresha ...

  7. linux系统清理僵尸进程记录

    在UNIX 系统中,一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他, 那么他将变成一个僵尸进程.  在fork()/execve()过程中,假设子进程结束时父进程仍存在, ...

  8. django网站安全学习记录

    现在比较流行的网站攻击方式有sql注入,xss跨站脚本攻击,csrf跨站请求伪造,一句话木马等等 django非常强大,对这些攻击都做了防范 sql注入,通过在sql语句中插入非法的sql语句来实现爆 ...

  9. DB2中查询前十数据的sql

    select * from A fetch first 10 rows only

  10. ES6中的async函数

    一.概述 async 函数是 Generator 函数的语法糖 使用Generator 函数,依次读取两个文件代码如下 var fs = require('fs'); var readFile = f ...