ORACLE 树型层次结构查询
ORACLE中的SELECT语句可以用 START WITH...CONNECT BY PRIOR 子句实现递归查询, CONNECT BY 是结构化查询中用到的. 官方说明: http://docs.oracle.com/cd/B28359_01/server.111/b28286/queries003.htm#SQLRF52315 一、基本语法: SELECT columnName1[,columnName2,…] FROM tableName1,tableName2,.. //位置1 [START WITH columnName3] CONNECT BY {PRIOR col 1 = col 2 | col 1 = PRIOR col 2} WHERE columnName4;//不知道是语法改变还是什么原因,测试的时候10G下该条件要放到 [位置1]处,暂时记录一下 上述语法主要用查询表中的树型结构关系 columnName3 是根结点的限定语句,当然可以放宽限定条件,以取得多个根结点,实际就是多棵树。 {PRIOR col 1 = col 2 | col 1 = PRIOR col 2} 是连接条件 PRIOR 表示强制从根节点到叶节点的顺序检索或从强制从叶节点到根节点的顺序检索 columnName4 表示过滤条件,是对结果树进行过滤,注意是先有结果树再过滤