加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 在oracle树查询中加入其他表

发布时间:2020-12-12 06:25:19 所属栏目:MsSql教程 来源:网络整理
导读:给出一个简单的(id,description)表t1,例如 id description-- -----------1 Alice2 Bob3 Carol4 David5 Erica6 Fred 和父子关系表t2,如 parent child------ -----1 21 34 55 6 Oracle提供了一种遍历此方法的方法,它具有一些自定义语法扩展: select parent,chi
给出一个简单的(id,description)表t1,例如
id  description
--  -----------
1   Alice
2   Bob
3   Carol
4   David
5   Erica
6   Fred

和父子关系表t2,如

parent  child
------  -----
1       2
1       3
4       5
5       6

Oracle提供了一种遍历此方法的方法,它具有一些自定义语法扩展:

select parent,child,sys_connect_by_path(child,'/') as "path"
from t2
connect by prior parent = child

确切的语法并不重要,我可能在上面做了一个错误.该
重要的是,上面会产生一些看起来像的东西

parent  child  path
------  -----  ----
1       2      /1/2
1       3      /1/3
4       5      /4/5
4       6      /4/5/6
5       6      /5/6

我的问题是:是否可以在sys_connect_by_path()中连接另一个表,例如上面的t1表,以生成类似于:

parent  child  path
------  -----  ----
1       2      /Alice/Bob
1       3      /Alice/Carol
... and so on...

解决方法

在查询中,将T2替换为连接T1和T2的子查询,并返回父,子和子描述.然后在sys_connect_by_path函数中,引用子查询中的子描述.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读