返回頂部
關閉軟件導航
位置:首頁 > 資訊 > 其他>下面的是oracle10g新增特性

  3.2 CONNECT_BY_ISLEAF

  在oracle9i的時候,查找指定root 下的葉子節點,是很復雜的,oracle10g引入了一個新的函數,connect_by_isleaf,如果行的值為0 表示不是葉子節點,1表示是葉子節點。

  找出s_emp 中找出manager_id=2 開始的行為root,表示葉子節點和非葉子節點,那么語句如下:

無限層次樹形筆記本

  select level,

  id,

無限層次樹形筆記本

  manager_id,

  last_name,

  title,

無限層次樹形筆記本

  (case --使用case表達式判斷是否是葉子節點

  when connect_by_isleaf = 1 then

  葉子

  else

  不是葉子

無限層次樹形筆記本   end) isleaf

  from s_emp

  start with manager_id = 2

  connect by prior id = manager_id;

  3.3 CONNECT_BY_ISCYCLE和NOCYCLE關鍵字

  如果從root 節點開始找其子孫,找到一行,結果發生和祖先互為子孫的情況,則發生循環,oracle會報ORA-01436: CONNECT BY loop in user data,在9i 中只能將發生死循環的不加入到樹中或刪除,在10g中可以用nocycle 關鍵字加在connect by之后,避免循環的參加查詢操作。并且通過connect_by_iscycle得到哪個節點發生循環。0表示未發生循環,1表示發生了循環,如:

  create table family1(

  fatherid number,

  childid number

  );

  insert into family1 values(null,1);

無限層次樹形筆記本   insert into family1 values(1,2);--父節點為1

  insert into family1 values(1,3);

  insert into family1 values(2,4);--發生循環

  insert into family1 values(4,1);--子節點為1

  insert into family1 values(4,5);

  commit;

  select connect_by_iscycle, fatherid,childid,sys_connect_by_path(childid,/)

  from family1

  start with fatherid is null

  connect by nocycle prior childid=fatherid;

  結果是:

  3.4 CONNECT_BY_ROOT

如果您覺得 下面的是oracle10g新增特性 這篇文章對您有用,請分享給您的好友,謝謝
文章地址:http://www.brucezhang.com/article/other/xmdsoraclegxztx.html
解放雙手無盡可能,有問題添加天線貓微信
主站蜘蛛池模板: 亚洲国产成人91精品| 成人影片在线免费观看| 成人性生活免费看| 成人在线免费观看| 亚洲欧美成人网| 成人欧美一区二区三区的电影| 成人777777| 久久久久久成人毛片免费看| 成人免费无码大片a毛片| 亚洲国产成人久久精品软件| 日本欧美成人免费观看| 免费成人一级片| 成人H动漫精品一区二区| 亚洲国产精品成人精品无码区在线| 色噜噜成人综合网站| 国产乱色精品成人免费视频| 成人一级片在线观看| 欧美成人高清WW| 97成人碰碰久久人人超级碰OO| 国产成人无码一区二区三区在线 | 亚洲欧洲精品成人久久曰影片| 欧美成人免费观看的| 久久亚洲国产成人亚| 亚洲国产精品成人久久| 国内成人精品亚洲日本语音| 欧美成人一区二区三区在线观看| 亚洲精品成人网站在线观看| 国产成人精品无码一区二区| 成人品视频观看在线| 欧美成人精品一区二三区在线观看| 久久成人福利视频| 亚洲成人高清在线| 亚洲国产精品成人精品无码区在线 | 欧美成人三级一区二区在线观看| 亚洲国产成人手机在线电影bd | 欧美激情成人网| 欧美成人免费一区二区| 欧美成人久久久| 成人影院wwwwwwwwwww| 国产精品欧美成人| 国产成人精品999在线观看|