Oracle知识点
2016-02-18 11:11
232 查看
select语句可以用START WITH…CONNECT BY PRIOR子句实现递归查询,connect by 是结构化查询中用到的,其基本语法是:
1:过滤条件,用于对返回的所有记录进行过滤。
2:查询结果重起始根结点的限定条件。
3:连接条件
如果connect by prior中的prior被省略,则查询将不进行深层递归。
1、start with id= 是定义起始节点(种子),可以是id也可以是root_id,定义为root_Id查询该节点下所有的树结构,定义为id(子节点)则查询指定的树
2、connect by prior :prior的含义为先前,前一条记录。prior id=root_id 也就是前一条记录的id等于当前记录的root_id(父id)
3、可以向下或者向上查找。。。。
4、level字段为oracle特有的层级字段,可以通过level字段查询指定的层级
select ... from <TableName> where <Conditional-1> start with <Conditional-2> connect by <Conditional-3>;
1:过滤条件,用于对返回的所有记录进行过滤。
2:查询结果重起始根结点的限定条件。
3:连接条件
如果connect by prior中的prior被省略,则查询将不进行深层递归。
1、start with id= 是定义起始节点(种子),可以是id也可以是root_id,定义为root_Id查询该节点下所有的树结构,定义为id(子节点)则查询指定的树
2、connect by prior :prior的含义为先前,前一条记录。prior id=root_id 也就是前一条记录的id等于当前记录的root_id(父id)
3、可以向下或者向上查找。。。。
4、level字段为oracle特有的层级字段,可以通过level字段查询指定的层级
select root_id,id,name,level from t2 where level=1 start with root_id = 0 connect by prior id = root_id;
相关文章推荐
- 基于 Red Hat 的发行版 Oracle Linux 正式发布Oracle Linux 7.1
- Oracle Containers for J2EE远程安全漏洞(CVE-2014-0413)
- Oracle 10g R2不能使用EM的问题
- 表空间操作
- PreparedStatement中in子句的处理
- VMware下RedHat4.8_64位安装Oracle 10g RAC--简略脚本
- oracle sql日期比较
- 基于 Red Hat 的发行版 Oracle Linux 正式发布Oracle Linux 7.1
- OS block size和Oracle block size,查找OS Blocksize的方法
- oracle中创建数据库和表空间的几点总结
- 数据库自动备份脚本
- oracle的nvl函数的使用介绍
- 解决oracle用户连接失败的解决方法
- oracle的一些tips技巧
- Oracle 下的开发日积月累
- Oracle存储过程之数据库中获取数据实例
- Windows下ORACLE 10g完全卸载的方法分析
- Oracle 函数大全[字符串函数,数学函数,日期函数]第1/4页
- ORACLE LATERAL-SQL-INJECTION 个人见解