ORACLE树形结构查询
2009-04-30 15:08
267 查看
在ORACLE数据库查询中,我们经常会遇到对树型结构表的查询,这是个麻烦的问题。下面给大家介绍一种SQL语句,实现递归查询。语法如下:
SELECT 字段1,字段2,字段3,。。。
FROM 表名
START WITH 条件1
CONNECT BY PRIOR 条件2
WHERE 条件3;
下面举一个例子,有这样一张表:
表dg_test
—————————————————————————————————————
parent_id child_id id_desc
—————————————————————————————————————
0000 1001 rows0
0000 1002 rows1
0000 1003 rows2
0000 1004 rows3
1001 2001 rows4
1001 2002 rows5
1002 2003 rows6
1003 2004 rows7
2001 3001 rows8
3001 4001 rows9
——————————————————————————————————————
使用如下SQL 语句:
SELECT * FROM dg_test START WITH parent_id = '1001' CONNECT BY PRIOR child_id = parent_id;
查询结果如下:
—————————————————————————————————————
parent_id child_id id_desc
—————————————————————————————————————
1001 2001 rows4
1001 2002 rows5
2001 3001 rows8
3001 4001 rows9
——————————————————————————————————————
SELECT 字段1,字段2,字段3,。。。
FROM 表名
START WITH 条件1
CONNECT BY PRIOR 条件2
WHERE 条件3;
下面举一个例子,有这样一张表:
表dg_test
—————————————————————————————————————
parent_id child_id id_desc
—————————————————————————————————————
0000 1001 rows0
0000 1002 rows1
0000 1003 rows2
0000 1004 rows3
1001 2001 rows4
1001 2002 rows5
1002 2003 rows6
1003 2004 rows7
2001 3001 rows8
3001 4001 rows9
——————————————————————————————————————
使用如下SQL 语句:
SELECT * FROM dg_test START WITH parent_id = '1001' CONNECT BY PRIOR child_id = parent_id;
查询结果如下:
—————————————————————————————————————
parent_id child_id id_desc
—————————————————————————————————————
1001 2001 rows4
1001 2002 rows5
2001 3001 rows8
3001 4001 rows9
——————————————————————————————————————
相关文章推荐
- MySql的sql语句中添加存储过程或者存储函数来实现Oracle中的start with ……connect by prior……递归(树形结构数据)查询
- oracle树形结构查询
- oracle11.2g递归查询(树形结构查询)
- oracle树形结构实行查询
- oracle取数字,替换字符,查询树形结构,(+)
- oracle表中树形结构与分级查询
- oracle 查询数据生成树形结构
- oracle树形结构层级查询之start with ....connect by prior、level、order by以及sys_connect_by_path之浅谈
- oracle 树形结构单表 查询 递归SQL
- /*Oracle树形结构查询*/
- Oracle查询树形结构
- oracle查询树形结构某层级节点及叶子节点
- Oracle 数据库树形结构查询
- Oracle层级(树形结构)查询及优化
- oracle树形结构查询语句
- Oracle Connect By用法 树形结构查询
- 如何用SQL查询语句获取Oracle表 树形结构的记录(PL/SQL )
- oracle 递归 树形结构数据查询
- Oracle SQL树形结构查询
- Oracle恢复删除数据 && connect by 树形结构查询