Mark's Java Blog
          MyEclipse, Java EE, Spring, Struts, Hibernate, JPA, SWT, Swing, AJAX, JavaScript,SOA

          Oracle用Start with...Connect By子句遞歸查詢


          Start with...Connect By子句遞歸查詢一般用于一個表維護樹形結構的應用。
          創建示例表:
          CREATE TABLE TBL_TEST
          (
            ID    NUMBER,
            NAME  VARCHAR2(100 BYTE),
            PID   NUMBER                                  DEFAULT 0
          );
           
          插入測試數據:
          INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('1','10','0');
          INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('2','11','1');
          INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('3','20','0');
          INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('4','12','1');
          INSERT INTO TBL_TEST(ID,NAME,PID) VALUES('5','121','2');
           
          從Root往樹末梢遞歸
          select * from TBL_TEST
           start with id=1
           connect by prior id = pid
           
          從末梢往樹ROOT遞歸
          select * from TBL_TEST
           start with id=5
           connect by prior pid = id

          posted on 2008-04-11 10:28 Mark 閱讀(280) 評論(0)  編輯  收藏 所屬分類: Oracle
           
          主站蜘蛛池模板: 东安县| 广水市| 德令哈市| 沈阳市| 乌兰察布市| 宁陕县| 金乡县| 拉孜县| 肥城市| 沾益县| 伊宁县| 涿州市| 普洱| 香港| 通河县| 宝鸡市| 江达县| 广元市| 镇平县| 屏南县| 新疆| 芜湖市| 紫金县| 金溪县| 沁源县| 博白县| 垣曲县| 宽甸| 顺昌县| 花莲市| 电白县| 乌苏市| 德清县| 浏阳市| 比如县| 桃园市| 琼中| 扬中市| 凤凰县| 齐河县| 武冈市|