Sql语句里的递归查询
| 
 Sql语句里的递归查询 SqlServer2005和Oracle 两个版本  | 
| 
 以前使用Oracle,觉得它的递归查询很好用,就研究了一下SqlServer,发现它也支持在Sql里递归查询 --下面的Sql是查询出1结点的所有子结点 --下面的Sql是查询出8结点的所有父结点 --下面是递归删除1结点和所有子结点的语句: Oracle版本的Sql如下: --下面的Sql是查询出8结点的所有父结点 今天帮别人做了一个有点意思的sql,也是用递归实现,具体如下:  | 
SQLserver2008使用表达式递归查询
--由父项递归下级 
with cte(id,parentid,text) 
as 
(--父项 
select id,parentid,text from treeview where parentid = 450 
union all 
--递归结果集中的下级 
select t.id,t.parentid,t.text from treeview as t 
inner join cte as c on t.parentid = c.id 
) 
select id,parentid,text from cte
---------------------
--由子级递归父项 
with cte(id,parentid,text) 
as 
(--下级父项 
select id,parentid,text from treeview where id = 450 
union all 
--递归结果集中的父项 
select t.id,t.parentid,t.text from treeview as t 
inner join cte as c on t.id = c.parentid 
) 
select id,parentid,text from cte
Sql语句里的递归查询的更多相关文章
- Sql语句里的递归查询(转)
		
原文摘自:http://blog.csdn.net/pdn2000/article/details/6674243 Sql语句里的递归查询 SqlServer2005和Oracle 两个版本 以前使用 ...
 - Sql语句里的递归查询 SqlServer2005和Oracle 两个版本
		
以前使用Oracle,觉得它的递归查询很好用,就研究了一下SqlServer,发现它也支持在Sql里递归查询举例说明:SqlServer2005版本的Sql如下:比如一个表,有id和pId字段,id是 ...
 - SQL语句里合并两个select查询结果
		
SQL UNION 操作符UNION 操作符用于合并两个或多个 SELECT 语句的结果集. 请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列.列也必须拥有相似的数据类型.同时,每条 ...
 - sql为什么用0,1表示男女?在sql语句里转好还是在页面转好?
		
转化语句:SELECT CASE `user_gender` WHEN '1' THEN '男' WHEN '0' THEN '未知'ELSE '女' END AS gender FROM `info ...
 - SQL Server 里的递归查询
		
http://www.360doc.com/content/13/0607/11/8463843_291221684.shtml
 - SQL语句里怎么获得当前年份(MySQL数据库)
		
使用函数Year及CurDate的组合: Year(CurDate()) select date_format(min(date),'%Y-%m-%d') as mindate, date_forma ...
 - LINQ to SQL语句(7)之Exists/In/Any/All/Contains
		
适用场景:用于判断集合中元素,进一步缩小范围. Any 说明:用于判断集合中是否有元素满足某一条件:不延迟.(若条件为空,则集合只要不为空就返回True,否则为False).有2种形式,分别为简单形式 ...
 - 年终巨献 史上最全 ——LINQ to SQL语句
		
LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句.Where操 ...
 - LINQ to SQL语句非常详细(原文来自于网络)
		
LINQ to SQL语句(1)之Where Where操作 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子 ...
 
随机推荐
- (Ios 实战) 自定义UITableView
			
自定义UITableView 分成两个部分 1 自定义UITableViewCell 继承UITableViewCell,同时提供接口,根据当前的数据,现实View 2 在UITableView中实 ...
 - 转  Java多线程中Sleep与Wait的区别
			
Java中的多线程是一种抢占式的机制,而不是分时机制.抢占式的机制是有多个线程处于可运行状态,但是只有一个线程在运行. 共同点: 1. 他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫秒数, ...
 - JSP 标准标签库(JSTL)之最常用的JSTL标签总结
			
JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. Apache Tomcat安装JSTL 库步骤如下: 从Apache的标准标签库中下载的二进包(jakarta-t ...
 - Linux基础问答
			
1.简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态. 1 2 3 4 5 6 7 8 9 10 11 12 13 #三次握手 客户端向服务器端发送SYN包,客户端进入SYN_SEND状 ...
 - nyoj 120 校园网络
			
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=120 思路:先将原图强连通缩点为新图,统计新图中入度,出度为0的点的个数,两者取最大值即为 ...
 - Linux 下从头再走 GTK+-3.0 (六)
			
在 GTK3 中增加了一个 GtkApplicaton 类,便于我们处理多窗口程序,同时有了 GtkApplication 我们也更容易创建灵活,易用,界面美观的应用程序. 在前面的几个例子中,演示了 ...
 - Android资源下载
			
各个版本,在线源码: http://grepcode.com/project/repository.grepcode.com/java/ext/com.google.android/android/ ...
 - oracle 11g dataguard创建的简单方法
			
oracle 10g可以通过基于备份的rman DUPLICATE实现dataguard,通过步骤需要对数据库进行备份,并在standby侧进行数据库的恢复.而到了11g,oracle推出了Dupli ...
 - is A和has A的区别
			
is A has A Red is A Color: class Red extends Color{} class Blue extends Color{} class Yellow exrends ...
 - CSS3 Filter详解(改变模糊度 亮度 透明度等方法)
			
CSS3 Filter(滤镜)属性提供了提供模糊和改变元素颜色的功能.CSS3 Fitler 常用于调整图像的渲染.背景或边框显示效果. -webkit-filter是css3的一个属性,Webkit ...