・DBMS名とバージョン
VB2008でOLEDBを使ってOracle10gに繋いでます。
・テーブルデータ
どの部品にはどの部品が使われてて〜といううような、
部品の構成を表す、下記のような親子関係と必要数のテーブルがあります
-------------
OYA KO KAZU
-------------
A B 1
A G 1
B C 1
B F 1
C D 1
C E 1
G C 2
G H 1
ツリーで表記すると、
A
├B
│├C
││├D
││└E
│└F
└G
├C
│├D
│└E
└H
Aという部品は、BとGの部品で出来ている。
Bという部品はCとFの部品で出来ている〜という感じです。
・欲しい結果
これを階層のレベルと、それぞれの子の合計数を出したい。
ここでいうBの下のCは1なので、DもEも1だが、
Gの下のCは2なので、DもEもx2されて2になる
----------------
LV KO GOUKEI
----------------
1 B 1
2 C 1
3 D 1
3 E 1
2 F 1
1 G 1
2 C 2
3 D 2
3 E 2
2 H 1
今は、プログラム側で親から子を見る所をサブルーチンで組み、回帰処理でループさせてるので、
リクエストが多く、あまりにも酷いかなぁ。。。と。
色々サンプルを見てconect byとかよく似てるんで、何かやり方があるのかな?と思い質問してみました。