- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
oracle递归查询(Oracle递归查询)
oracle递归查询(Oracle递归查询)
http: / / / xxciof / blog / static / 7978132720095193113752 /
oracle中 connect by prior 递归算法
oracle中start with...connect by prior子句用法 connect by 是结构化查询中用到的, 其基本语法是:
select... from tablename start with 条件1
connect by 条件2
where 条件3;
例:
select * from table
start with org _ id = hbhqfwgwpy
connect by prior org _ id = parent _ id;
简单说来是将一个树状结构存储在一张表里, 比如一个表中存在两个字段:
org _ id, parent _ id那么通过表示每一条记录的parent是谁, 就可以形成一个树状结构.
用上述语法的查询可以取得这棵树的所有记录.
其中:
条件1 是根结点的限定语句, 当然可以放宽限定条件, 以取得多个根结点, 实际就是多棵树.
条件2 是连接条件, 其中用prior表示上一条记录, 比如 connect by prior org _ id = parent _ id就是说上一条记录的org _ id 是本条记录的parent _ id, 即本记录的父亲是上一条记录.
条件3 是过滤条件, 用于对返回的所有记录进行过滤.
简单介绍如下:
早扫描树结构表时, 需要依此访问树结构的每个节点, 一个节点只能访问一次, 其访问的步骤如下:
第一步: 从根节点开始;
第二步: 访问该节点;
第三步: 判断该节点有无未被访问的子节点, 若有, 则转向它最左侧的未被访问的子节, 并执行第二步, 否则执行第四步;
第四步: 若该节点为根节点, 则访问完毕, 否则执行第五步;
第五步: 返回到该节点的父节点, 并执行第三步骤.
总之: 扫描整个树结构的过程也即是中序遍历树的过程.
1. 树结构的描述
树结构的数据存放在表中, 数据之间的层次关系即父子关系, 通过表中的列与列间的关系来描述, 如emp表中的empno和mgr.empno表示该雇员的编号, mgr表示领导该雇员的人的编号, 即子节点的mgr值等于父节点的empno值.在表的每一行中都有一个表示父节点的mgr (除根节点外), 通过每个节点的父节点, 就可以确定整个树结构.
在select命令中使用connect by 和蔼start with 子句可以查询表中的树型结构关系.其命令格式如下:
select...
connect by {prior 列名1 = 列名2 | 列名1 = prior 裂名2}
(start with);
其中: connect by子句说明每行数据将是按层次顺序检索, 并规定将表中的数据连入树型结构的关系中.
The PRIORY operator must be placed in front of one of the two columns of the connection. For the parent-child relationship between nodes, the PRIOR operator represents the parent node on one side and represents the child node on the other side, thus determining whether the lookup tree structure is top-down or bottom-up. In connection relationships, list wise is also allowed, in addition to column names. The START WITH clause is optional, which identifies which node serves as the root node of the tree structure. If the clause is omitted, all rows satisfying the query condition are represented as root nodes.
START WITH: not only can you specify a root node, but you can also specify multiple root nodes.
2. about PRIOR
The operator PRIOR i
您可能关注的文档
- cad快捷键命令(CAD shortcut command).doc
- cad快捷键文本文档(The CAD shortcut key text document).doc
- cad指令表(CAD instruction.).doc
- cad所有命令(All CAD commands).doc
- cad指令(The CAD instruction).doc
- cad快捷键层序代码(The CAD shortcut key sequence code).doc
- cad操作(CAD operation).doc
- cad的各个命令解释(The CAD command interpretation).doc
- cad快捷(CAD fast).doc
- cad的键盘操作指令(CAD keyboard commands).doc
- osi的7层网络结构图和tcpip5层结构图(OSI 7 layer network structure and tcpip5 layer structure).doc
- osp与hasl比较(OSP与HASL比较).doc
- osp常见问题(OSP common problems).doc
- owl city 歌词(猫头鹰之城歌词).doc
- o_p_e.空间坐标转化为平面坐标(O_p_e. space coordinates into plane coordinates).doc
- overlay(覆盖).doc
- p2p数据包传输协议(P2P packet transmission protocol).doc
- p2p流媒体系统(P2P streaming media system).doc
- panel各项属性(面板各项属性).doc
- pc+abs 德国拜耳数据(Pc+abs Bayer data).doc
文档评论(0)