返回頂部
關閉軟件導航
位置:首頁 > 資訊 > 其他>下面的是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://m.brucezhang.com/article/other/xmdsoraclegxztx.html
解放雙手無盡可能,有問題添加天線貓微信
主站蜘蛛池模板: 成人国产一区二区三区| 久久久久亚洲AV成人网| 国产成人综合久久久久久| 久久亚洲AV成人无码| 四虎成人免费观看在线网址| 中文国产成人精品久久app| 成人福利小视频| 在线观看国产成人av片| 亚洲色成人网一二三区| 亚洲成人网在线| 成人嗯啊视频在线观看| 国产成人精品免费视频软件| 免费看欧美成人性色生活片| 我的初次内射欧美成人影视| 国产成人精品综合在线观看| 亚洲国产精品无码成人片久久| 日韩av无码成人精品国产| 亚洲欧美成人完整版在线| 天天成人综合网| 欧美成人鲁丝片在线观看| 国产成人 亚洲欧洲| 日韩国产成人资源精品视频| 四虎影视永久地址www成人 | 成人au免费视频影院| www.国产成人| 亚洲国产成人久久精品软件| 国产成人黄网在线免| 成人国产精品免费视频| 色老头成人免费视频天天综合| 国产成人免费网站app下载| 欧美e片成人在线播放乱妇| 亚洲精品亚洲人成人网| 国产成人免费高清激情视频| 在线免费成人网| 国产成人精品高清不卡在线| 成人亚洲成人影院| 成人午夜短视频| 成人超污免费网站在线看| 久久久久99精品成人片试看| 亚洲国产成人综合| 中文字幕在线成人免费看|