您的位置:首页 > 数据库

sql 递归查询

2010-08-26 11:51 190 查看
最近朋友问一sql问题,sql的递推查询,不可以用函数,只能是纯sql,弄了一上午,只能通过oracle的函数来弄,想出不别的办法了,有感兴趣的朋友可以一起研究下。

下面是我的方法

创建表

create table T1
(
ID NUMBER,
PID NUMBER
)

表中数据

id pid

1 0
2 1
3 1
4 2
5 4
6 5
7 6

8 5

sql语句

select pid, id from t1 start with pid='4' connect by prior id=pid

根据父id(pid),查出下面的无限级的子id,前提是不知道有多少级

输出结果

id pid

5 4
6 5
7 6
8 5
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: