sys_connect_by_path関数の使い方

744 ワード

Oracleのsys_connect_by_path関数の使い方:
  
   sys_connect_by_path関数の主な役割は、1つの親ノードの下のすべてのサブノードをある文字で区別する、1つの列に接続して表示することであり、主にツリーテーブル構造に用いる.
表示結果はルートノードから現在のノードまでのすべてのパス上のノードで、指定した記号で分割されます.

select p.id,
       p.parentid,
       p.name_cn,
       substr(sys_connect_by_path(p.id, ','), 2) fullpath,
       substr(sys_connect_by_path(p.name_cn, ','), 2) cnfullpath,
       substr(sys_connect_by_path(p.name_en, ','), 2) enfullpath
  from sup_navtree_t p
 start with p.parentid = 'ROOT'
connect by prior p.id = p.parentid

参照
7275738,7275792
7275738,7275792,7276182
7275738,7275792,7276182,16241,28487