请用一句SQL实现

hdkkk 2002-08-29 11:02:32
有没有递归的sql语句
有一张表 t
字段:
parent
child
两个字段的关系是父子关系

能不能写一个sql语句,查询出指定父下面的所有的子?

比如

a b
a c
a e
b b1
b b2
c c1
e e1
e e3
d d1

指定parent=a,选出
a b
a c
a e
b b1
b b2
c c1
e e1
e e3


...全文
30 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bzszp 2002-08-29
  • 打赏
  • 举报
回复
或者:
select * from t
where parent in (select child from t where parent='a') or t.parent='a';
qfsb_p 2002-08-29
  • 打赏
  • 举报
回复
你可以试试这个
select p,c from table start with p='a' connect by prior c=p
hdkkk 2002-08-29
  • 打赏
  • 举报
回复
SQL> select parent,child from t start with parent='a' connect by prior child=par
ent;

PAR CHI
--- ---
a b
b d
d
b b1
b1
b b2
b2
a c
c c1
c1
a e

PAR CHI
--- ---
e e1
e1
e e2
e2

已选择15行。

SQL>

I had got it
black_dragon 2002-08-29
  • 打赏
  • 举报
回复
select parent,child from yout_table start with parent='a' connect by prior child=parent;
jlandzpa 2002-08-29
  • 打赏
  • 举报
回复
use connect by.
yuxuan 2002-08-29
  • 打赏
  • 举报
回复
同意 black_dragon(半仙)的写法,可以实现:
select parent,child from yout_table start with parent='a' connect by prior child=parent;

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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