• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:階層問い合わせ?親子展開したVIEWを作りたい)

階層問い合わせ?親子展開したVIEWを作成したい

このQ&Aのポイント
  • 親子のデータを展開したVIEWを作成したいのですが、階層問い合わせというものがあるということまで分かりました。
  • SQLを以下のように記述してみたのですが、思惑とは若干違います。最上位の親を表示したいのですが、どのようなSQLにすれば可能でしょうか。
  • 希望する結果を得るためには、レベルを指定して親子関係を辿る方法を使用する必要があります。

質問者が選んだベストアンサー

  • ベストアンサー
  • yamada_g
  • ベストアンサー率68% (258/374)
回答No.1

connect_by_root演算子で最上位の値を取得できます。 SELECT CASE WHEN LEVEL = 1 THEN OYACD ELSE CONNECT_BY_ROOT KOCD END OYACD ,KOCD FROM TBL1 START WITH OYACD = 0 CONNECT BY PRIOR KOCD = OYACD; としてみてください。 最上位の場合はOYACDをそのまま出力するようにするために、LEVELを使って判断しています。 すでに読んでいらっしゃるかもしれませんが、こちらが分かりやすく解説してくれていると思います。 http://codezine.jp/article/corner/301

bonnumaman
質問者

お礼

さっそくの回答どうもありがとうございます。 教えていただいた方法で思惑のデータを参照することができました。 とても助かりました。ありがとうございました。

関連するQ&A