当前位置: > 数据库 > Oracle >

oracle 树结构查询

时间:2015-02-11 19:31来源:linux.it.net.cn 作者:IT
select *
from t_workflow_info
start with typeId in ('26','27')
connect by prior typeId=parentid
union
select *
from t_workflow_info t2
where typeId='26'

说明:
start with 必须和connect by 一起存在
其中start with用于限定第一个条件,根节点的限定条件
connect by用于限定关系查询条件 prior typeId=parentid
表示parentid和上一级的typeId相等的查询条件

/**
表结构: typeId主键,下一级别的parentId等于本级的typeID
*/
create table T_WORKFLOW_INFO
(
  TYPEID   NUMBER(15) not null,
  WF_TYPE  VARCHAR2(200) not null,
  WF_DESC  VARCHAR2(200),
  PARENTID NUMBER(15) default 0 not null,
  REMARK   VARCHAR2(1000)
)





(责任编辑:IT)
------分隔线----------------------------