start with.......connect by prior的问题,有人碰到过吗

阿森纳2013 2007-05-30 09:45:49
id 父id
1 0
2 1
3 1
4 2
5 3
6 3
7 5


比如:如果id=7
要求查询id=7与
(
select id from 表A
start with id=7
connect by prior 父id=id
)
的组合,比如
那么显示出来是:
id
7 7
7 5
7 3
7 1

这个sql 应该如何写呢


http://community.csdn.net/Expert/topic/5569/5569114.xml?temp=.2292749
...全文
545 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
murfy_mf 2007-06-06
  • 打赏
  • 举报
回复
加入ORACLE的群吧;群号是:19312711
HelloWorld_001 2007-06-01
  • 打赏
  • 举报
回复
混点分!
阿森纳2013 2007-05-30
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/TopicView.asp?id=5569114
http://community.csdn.net/Expert/TopicView.asp?id=5569124
http://community.csdn.net/Expert/TopicView.asp?id=5569130

大家帮个忙,三贴一并给分,谢谢了!!^_^
阿森纳2013 2007-05-30
  • 打赏
  • 举报
回复
我是想写个视图

表A记录集如下:
id 父id
1 0(表示无父id)
2 1
3 1
4 2
5 3
6 3
7 5


这个视图

我希望查出的结果:
7 1
7 3
7 5
7 7
6 6
6 3
6 1
5 5
5 3
5 1
4 4
4 2
4 1
3 3
3 1
2 2
2 1
1 1
wangzk0206 2007-05-30
  • 打赏
  • 举报
回复
这样??

SQL> SELECT 7 ID,7 P_ID FROM DUAL
2 UNION
3 SELECT 7 ID,P_ID FROM SUB_PAR
4 START WITH ID=7
5 CONNECT BY PRIOR P_ID=ID;

ID P_ID
---------- ----------
7 0
7 1
7 3
7 5
7 7

SQL> SELECT * FROM SUB_PAR;

ID P_ID
---------- ----------
1 0
2 1
3 1
4 2
5 3
6 3
7 5

已选择7行。
CathySun118 2007-05-30
  • 打赏
  • 举报
回复
select id,父id from 表A where id=7
union all
select id,父id from 表A
start with id=7
connect by prior 父id=id

3,491

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 高级技术相关讨论专区
社区管理员
  • 高级技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧