SYS_CONNECT_BY_PATH
構文
目的
SYS_CONNECT_BY_PATH
は、階層問合せのみで有効です。このファンクションは、ルートからノードへの列の値のパスを、CONNECT
BY
条件によって戻された各行をchar
で区切った列の値とともに戻します。
column
およびchar
は、CHAR
、VARCHAR2
、NCHAR
またはNVARCHAR2
データ型です。戻される文字列は、VARCHAR2
データ型であり、column
と同じ文字セットです。
関連項目:
-
階層問合せおよび
CONNECT
BY
条件の詳細は、「階層問合せ」を参照してください。 -
SYS_CONNECT_BY_PATH
の文字の戻り値に割り当てる照合を定義する照合導出ルールは、『Oracle Databaseグローバリゼーション・サポート・ガイド』の付録Cを参照してください。
例
次の例では、従業員Kochhar
からKochhar
のすべての従業員(およびそれらの従業員の従業員)への従業員名のパスを戻します。
SELECT LPAD(' ', 2*level-1)||SYS_CONNECT_BY_PATH(last_name, '/') "Path" FROM employees START WITH last_name = 'Kochhar' CONNECT BY PRIOR employee_id = manager_id; Path ------------------------------ /Kochhar/Greenberg/Chen /Kochhar/Greenberg/Faviet /Kochhar/Greenberg/Popp /Kochhar/Greenberg/Sciarra /Kochhar/Greenberg/Urman /Kochhar/Higgins/Gietz /Kochhar/Baer /Kochhar/Greenberg /Kochhar/Higgins /Kochhar/Mavris /Kochhar/Whalen /Kochhar